新手体验OceanBase社区版V4.2:离线部署单节点集群

本文源自OceanBase用户的分享

先简单总结如下:

1.本文适合初学者体验OceanBase社区版 v4.2.2

2.仅需准备一台配置为2C/8G的Linux虚拟机

3.通过离线方式安装,以便更直观地了解安装过程

一、Linux系统准备

在宿主机(即你的windows PC电脑)上安装vbox软件,点击新建按钮,输入自定义名称,文件夹为Linux虚拟机的安装路径。

1710762266

内存大小设置为8G,尝试过分配4G,后期安装时会提示内存不足

1710762329

1710762340

虚拟硬盘的文件类型,如果想与vmware等其它虚拟机软件通用,可选择VMDK

1710762352

这里分配100G的动态空间,实际并不会真正地占用宿主机100G空间,所以不必担心

选中新建的虚拟机-obdb,点击设置

1710762402

在左侧系统选项卡中设置光驱文件、处理器等

1710762443

1710762451

1710762462

注意此处要将默认加载的光驱删掉,不然后面VBOX软件会出BUG

1710762477

网络连接方式选择host-only,即离线模式

1710762507

1710762529

1710762545

光标向上选择到Install选项,回车进行下一步

Ps:安装期间如果想从虚拟机窗体中返回到你的pc桌面,可以按右侧的ctrl键

1710762602

点击左上方的DONE按钮

1710762719

软件集选择Server with GUI,方便后面配置网卡等

1710762738

选择I will configure partitioning选项,之后点击左上方DONE后会进入磁盘分区,各分区大小按下方设置即可

1710762758

1710762770

1710762779

/swap这个特殊,文件类型要选择swap

1710762794

1710762802

DONE

ACCEPT CHANGES,这里如果用鼠标选不到,可以使用TAB键

关闭kdump

1710762830

设置主机名,网卡的自动启动,其实这步不设置也没事,后面还要重复设置

1710762852

Ps:这里不要点configure配置IP信息,点了后你将陷入深坑

关闭安全策略

1710762923

Begin installation

1710762943

在这里点击ROOT PASSWORD为root用户设置口令,我通常设置为123456,你随意

接下来就是

REBOOT

LICENSE INFORMATION处接受下即可

1710762983

重复的步骤又来了,还是不要点击右下角的configure

1710762998

全部完成后点击右下角finish configuration,之后会进入Linux的欢迎界面

点击Applications->System Tools->Settings

1710763042

设置网络IP信息等

1710763057

1710763069

1710763080

1710763088

设置完后验证一下ip是否设置成功

1710763105

下面在你的宿主机(windows  PC电脑)上安装个连接工具,SecureCRT,百度就有,找不到的留言我发你,新建个连接,输入ip、用户名及密码

1710763125

下面关闭Linux的防火墙和Selinux,不然后面使用obd web、ocp express时会访问失败

[root@obdb ~]# systemctl stop firewalld.service 
[root@obdb ~]# systemctl disable firewalld.service 
 
[root@obdb ~]# vi /etc/selinux/config    --将SELINUX=enforcing改为disabled

1710763233

修改完后重启一下Linux,root用户执行init 6或reboot均可
[root@obdb ~]# init 6

至此,Linux系统准备完毕

二、安装ob集群各组件

1.下载安装包

ALL-IN-ONE安装包https://www.oceanbase.com/softwarecenter,安装包名称为oceanbase-all-in-one-4.2.2.0-100010012024022719.el7.x86_64.tar.gz

Ps:注意区分好架构x86还是arm,如何区分?root用户执行lscpu,结果中的第一行即是

将此安装包存放在你的windows宿主机的C://soft/下

2.上传安装包到Linux虚拟机

右键点击SecureCRT中创建的连接标签,使用sftp进行上传

1710763448

1710763463

lcd c:/soft为指定安装包所在windows宿主机的位置

cd /soft为指定Linux虚拟机的目的位置

put为上传(即windows宿主机到Linux虚拟机的传输)

3.安装OBD

[root@obdb ~]# cd /soft/
[root@obdb soft]# ls
oceanbase-all-in-one-4.2.2.0-100010012024022719.el7.x86_64.tar.gz
[root@obdb soft]# tar -xzf oceanbase-all-in-one-4.2.2.0-100010012024022719.el7.x86_64.tar.gz 
[root@obdb soft]# cd /soft/oceanbase-all-in-one/rpms/
[root@obdb soft]# rpm -ivh ob-deploy-2.6.2-2.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
  1:ob-deploy-2.6.2-2.el7            ################################# [100%]
Installation of obd finished successfully
Please source /etc/profile.d/obd.sh to enable it
[root@obdb soft]# source /etc/profile.d/obd.sh 

[root@obdb soft]# useradd admin
[root@obdb ~]# chown -R admin:admin /soft/

以网页形式运行obd

[admin@obdb ~]$ obd web
start OBD WEB in 0.0.0.0:8680
please open http://192.168.56.200:8680

打开windows宿主机的浏览器,输入http://192.168.56.200:8680

1710763821

1710763828

1710763833

可以看到各组件后面都有个红叉,因为咱们的虚拟机没有联网,不支持在线安装,需要离线安装,下面介绍使用obd离线安装

首先查看一下obd镜像库

[admin@obdb ~]$ obd mirror list
[ERROR] Another app is currently holding the obd lock.
Trace ID: ca3e042c-e4c9-11ee-908d-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace ca3e042c-e4c9-11ee-908d-080027b82be3

遇到了错误,原因是咱之前执行了obd web,把执行obd web的SecureCRT窗口ctrl+c后再尝试就可以了

再次执行obd mirror list,共返回三行,两个远程端,一个本地端,对于离线安装需要将所需的组件安装包注册到local本地镜像库中

1710763920

[admin@obdb ~]$ obd mirror list local                             -----------查看本地镜像库安装包
local Package List is empty.
Trace ID: c50b0132-e4d1-11ee-9492-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace c50b0132-e4d1-11ee-9492-080027b82be3
[admin@obdb ~]$
[admin@obdb ~]$ cd /soft/oceanbase-all-in-one/rpms/                                  -----------all-in-one自带的安装包位置
[admin@obdb rpms]$ obd mirror clone *.rpm                                                 -----------注册所有安装包至本地镜像库
[admin@obdb rpms]$ obd mirror list local                      -----------再次查看本地镜像库安装包,发现已成功注册
+------------------------------------------------------------------------------------------------------------------+
|                                                local Package List                                                |
+---------------------------+---------+------------------------+--------+------------------------------------------+
| name                      | version | release                | arch   | md5                                      |
+---------------------------+---------+------------------------+--------+------------------------------------------+
| grafana                   | 7.5.17  | 1                      | x86_64 | 1bf1f338d3a3445d8599dc6902e7aeed4de4e0d6 |
| obagent                   | 4.2.2   | 100000042024011120.el7 | x86_64 | 19739a07a12eab736aff86ecf357b1ae660b554e |
| ob-configserver           | 1.0.0   | 2.el7                  | x86_64 | feca6b9c76e26ac49464f34bfa0780b5a8d3f4a0 |
| ob-deploy                 | 2.6.1   | 6.el7                  | x86_64 | e9a0a7af5ecedd7a267ccef44e64b6323ea568c2 |
| obproxy-ce                | 4.2.1.0 | 11.el7                 | x86_64 | 0aed4b782120e4248b749f67be3d2cc82cdcb70d |
| oceanbase-ce              | 4.2.2.0 | 100010012024022719.el7 | x86_64 | 60fe842818ef64631dd3bb6f90bf4cab0e737195 |
| oceanbase-ce-libs         | 4.2.2.0 | 100010012024022719.el7 | x86_64 | 756bc0a7949701b0a6c707a29cf623f7fb966bb7 |
| oceanbase-diagnostic-tool | 1.5.2   | 22024010415.el7        | x86_64 | 4c0f0551be4ad04bc40a66763f66f76fb8bdf10c |
| ocp-express               | 4.2.2   | 100000022024011120.el7 | x86_64 | 09ffcf156d1df9318a78af52656f499d2315e3f7 |
| prometheus                | 2.37.1  | 10000102022110211.el7  | x86_64 | 58913c7606f05feb01bc1c6410346e5fc31cf263 |
+---------------------------+---------+------------------------+--------+------------------------------------------+
Trace ID: c28f8d64-e4d2-11ee-ad35-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace c28f8d64-e4d2-11ee-ad35-080027b82be3

OBD使用手册:https://www.oceanbase.com/docs/community-obd-cn-1000000000519118

注册完obd local镜像库后重新以admin用户执行obd web并访问http://192.168.56.200:8680便可继续安装部署了,小红叉也消失了

1710764189

1710764197

这里默认为3个zone,将下面的2个zone删掉,输入Linux虚拟机IP,下面输入admin的口令即可下一步

1710764223

这里的安装目录使用默认即可,实际生产环境是需要严格设置的

执行预检查

1710764242

1710764251

Duang!遇到问题了

原因:OBD-1007: (192.168.56.200) The value of the ulimit parameter "open files" must not be less than 20000 (Current value: 1024)

建议:Please execute `echo -e "* soft nofile 20000\n* hard nofile 20000" >> /etc/security/limits.d/nofile.conf` as root in 192.168.56.200. if it dosen't work, please check whether UsePAM is yes in /etc/ssh/sshd_config.

如建议提示所述,以root用户登陆,执行echo -e "* soft nofile 20000\n* hard nofile 20000" >> /etc/security/limits.d/nofile.conf,回到界面重新检查便可通过,太人性了!

1710764454

1710764476

安装部署完成,提示的信息需要记录下 

ps:如果忘记了可以使用如下命令查阅,这一点也值得夸赞

[admin@obdb ~]$ obd cluster display myoceanbase
Get local repositories and plugins ok
Open ssh connection ok
Cluster status check ok
Connect to observer 192.168.56.200:2881 ok
Wait for observer init ok
+--------------------------------------------------+
|                     observer                     |
+----------------+---------+------+-------+--------+
| ip             | version | port | zone  | status |
+----------------+---------+------+-------+--------+
| 192.168.56.200 | 4.2.2.0 | 2881 | zone1 | ACTIVE |
+----------------+---------+------+-------+--------+
obclient -h192.168.56.200 -P2881 -uroot -p'r5]g0aBWhZVSh%;*)KukQl}whz~@' -Doceanbase -A

Connect to obproxy ok
+--------------------------------------------------+
|                     obproxy                      |
+----------------+------+-----------------+--------+
| ip             | port | prometheus_port | status |
+----------------+------+-----------------+--------+
| 192.168.56.200 | 2883 | 2884            | active |
+----------------+------+-----------------+--------+
obclient -h192.168.56.200 -P2883 -uroot -p'r5]g0aBWhZVSh%;*)KukQl}whz~@' -Doceanbase -A 

Connect to Obagent ok
+-------------------------------------------------------------------+
|                              obagent                              |
+----------------+--------------------+--------------------+--------+
| ip             | mgragent_http_port | monagent_http_port | status |
+----------------+--------------------+--------------------+--------+
| 192.168.56.200 | 8089               | 8088               | active |
+----------------+--------------------+--------------------+--------+
Connect to ocp-express ok
+-------------------------------------------------------------------+
|                            ocp-express                            |
+----------------------------+----------+------------------+--------+
| url                        | username | initial password | status |
+----------------------------+----------+------------------+--------+
| http://192.168.56.200:8180 | admin    | %M5Kh6@y         | active |
+----------------------------+----------+------------------+--------+
Trace ID: 28ac73a4-e4f2-11ee-81de-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace 28ac73a4-e4f2-11ee-81de-080027b82be3

这时候obd web界面就可以关掉了,直接ctrl+c就可以

三、使用体验

1.当你不知道这台主机安装了哪些集群的情况下怎么办?可以使用obd命令进行查询

[admin@obdb ~]$ obd cluster list
+----------------------------------------------------------------------+
|                             Cluster List                             |
+-------------+--------------------------------------+-----------------+
| Name        | Configuration Path                   | Status (Cached) |
+-------------+--------------------------------------+-----------------+
| myclustljc  | /home/admin/.obd/cluster/myclustljc  | configured      |
| myclusljc   | /home/admin/.obd/cluster/myclusljc   | configured      |
| myljc       | /home/admin/.obd/cluster/myljc       | configured      |
| myoceanbase | /home/admin/.obd/cluster/myoceanbase | running         |
+-------------+--------------------------------------+-----------------+
Trace ID: 3c3c85a4-e4f1-11ee-8ff4-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace 3c3c85a4-e4f1-11ee-8ff4-080027b82be3

Duang!我的为什么会有4个集群?因为前三个失败了,但是这里还会显示状态为configured,这个咋清理掉呢?我是小白,真不会啊

2.集群的停止

[admin@obdb ~]$ obd cluster stop myoceanbase
Get local repositories ok
Search plugins ok
Open ssh connection ok
Stop observer ok
Stop obshell ok
Stop obproxy ok
Stop obagent ok
Stop ocp-express ok
myoceanbase stopped
Trace ID: 08bcff70-e518-11ee-b437-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace 08bcff70-e518-11ee-b437-080027b82be3
[admin@obdb ~]$

3.集群的启动

[admin@obdb ~]$ obd cluster start myoceanbase
Get local repositories ok
Search plugins ok
Load cluster param plugin ok
Open ssh connection ok
Check before start observer ok
Check before start obproxy ok
Check before start obagent ok
Check before start ocp-express ok
Start observer ok
observer program health check ok
obshell program health check ok
Connect to observer 192.168.56.200:2881 ok
Start obproxy ok
obproxy program health check ok
Connect to obproxy ok
Initialize obproxy-ce ok
Start obagent ok
obagent program health check ok
Connect to Obagent ok
Start ocp-express ok
ocp-express program health check ok
Connect to ocp-express ok
Initialize ocp-express ok
Wait for observer init ok
+--------------------------------------------------+
|                     observer                     |
+----------------+---------+------+-------+--------+
| ip             | version | port | zone  | status |
+----------------+---------+------+-------+--------+
| 192.168.56.200 | 4.2.2.0 | 2881 | zone1 | ACTIVE |
+----------------+---------+------+-------+--------+
obclient -h192.168.56.200 -P2881 -uroot -p'r5]g0aBWhZVSh%;*)KukQl}whz~@' -Doceanbase -A

+--------------------------------------------------+
|                     obproxy                      |
+----------------+------+-----------------+--------+
| ip             | port | prometheus_port | status |
+----------------+------+-----------------+--------+
| 192.168.56.200 | 2883 | 2884            | active |
+----------------+------+-----------------+--------+
obclient -h192.168.56.200 -P2883 -uroot -p'r5]g0aBWhZVSh%;*)KukQl}whz~@' -Doceanbase -A 

+-------------------------------------------------------------------+
|                              obagent                              |
+----------------+--------------------+--------------------+--------+
| ip             | mgragent_http_port | monagent_http_port | status |
+----------------+--------------------+--------------------+--------+
| 192.168.56.200 | 8089               | 8088               | active |
+----------------+--------------------+--------------------+--------+
+-------------------------------------------------------------------+
|                            ocp-express                            |
+----------------------------+----------+------------------+--------+
| url                        | username | initial password | status |
+----------------------------+----------+------------------+--------+
| http://192.168.56.200:8180 | admin    | %M5Kh6@y         | active |
+----------------------------+----------+------------------+--------+
myoceanbase running
Trace ID: 277e4c2a-e518-11ee-939f-080027b82be3
If you want to view detailed obd logs, please run: obd display-trace 277e4c2a-e518-11ee-939f-080027b82be3

4.使用客户端登陆数据库

[admin@obdb ~]$ obclient -h192.168.56.200 -P2881 -uroot -p'r5]g0aBWhZVSh%;*)KukQl}whz~@' -Doceanbase -A
bash: obclient: command not found...

Duang!Duang! 客户端工具还没安装https://www.oceanbase.com/softwarecenter下找到[OceanBase 命令行客户端]下载obclient-2.2.3-1.el7.x86_64.rpm并上传到虚拟机上

sftp> lcd c:/soft/
sftp> cd /soft/
sftp> put obclient-2.2.3-1.el7.x86_64.rpm
Uploading obclient-2.2.3-1.el7.x86_64.rpm to /soft/obclient-2.2.3-1.el7.x86_64.rpm
 100% 11656KB  11656KB/s 00:00:00     
c:/soft/obclient-2.2.3-1.el7.x86_64.rpm: 11936672 bytes transferred in 0 seconds (11656 KB/s)
sftp>
[root@obdb ~]# cd /soft/

[root@obdb soft]# rpm -ivh obclient-2.2.3-1.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
  1:obclient-2.2.3-1.el7             ################################# [100%]
 

[root@obdb soft]# su - admin
Last login: Mon Mar 18 19:00:48 CST 2024 on pts/0
[admin@obdb ~]$ 
[admin@obdb ~]$ obclient -h192.168.56.200 -P2881 -uroot -p'r5]g0aBWhZVSh%;*)KukQl}whz~@' -Doceanbase -A
Welcome to the OceanBase.  Commands end with ; or \g.
Your OceanBase connection id is 3221562009
Server version: OceanBase_CE 4.2.2.0 (r100010012024022719-c984fe7cb7a4cef85a40323a0d073f0c9b7b8235) (Built Feb 27 2024 19:20:54)

Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

obclient [oceanbase]> 
 

客户端登陆没问题了

5.登陆ocp express

1710765737

新建个租户

1710765753

1710765776

ocp express绝对是轻量级,这么低的配置跑起来非常轻松

在ocp express界面还可以体验监控、诊断分析、日志、修改参数等功能,绝非鸡肋!

到这里体验完成,下个目标:扩展集群节点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/498369.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

李宏毅【生成式AI导论 2024】第5讲 让语言模型彼此合作,把一个人活成一个团队

GPD4,它也有非常强大的能力。但是GPT4如果跟其他的语言模型合作,他们其实可以发挥1加1大于二的力量。 为什么要让模型合作? 那怎么让模型彼此合作呢?有很多不同的方式。一个可能性是假设你现在手边就有一堆语言模型,他们可能有不同的能力使用,他们可能有不同的成本局来…

如何将几个长度相同的列表并列组合在一起(附:zip函数使用出错原因:巨坑~)

Python中列表对象使用很方便,用Python编程时,经常会遇到将多个长度相同的列表是针对某一组特定对象的,如何能方便的把这些列表组合起来一起使用呢?ZIP()函数可以方便的解决这个问题。 一、将几个长度相同的列表并列组合 例如&am…

2014年认证杯SPSSPRO杯数学建模B题(第二阶段)位图的处理算法全过程文档及程序

2014年认证杯SPSSPRO杯数学建模 B题 位图的处理算法 原题再现: 图形(或图像)在计算机里主要有两种存储和表示方法。矢量图是使用点、直线或多边形等基于数学方程的几何对象来描述图形,位图则使用像素来描述图像。一般来说&#…

3D产品可视化SaaS

“我们正在走向衰退吗?” “我们已经陷入衰退了吗?” “我们正在步入衰退。” 过去几个月占据头条的问题和陈述引发了关于市场对每个行业影响的讨论和激烈辩论。 特别是对于科技行业来说,过去几周一直很动荡,围绕费用、增长和裁…

1.8 python 模块 time、random、string、hashlib、os、re、json

ython之模块 一、模块的介绍 (1)python模块,是一个python文件,以一个.py文件,包含了python对象定义和pyhton语句 (2)python对象定义和python语句 (3)模块让你能够有逻辑地…

Tomcat 单机多实例一键安装

文章目录 一、场景说明二、脚本职责三、参数说明四、操作示例五、注意事项 一、场景说明 本自动化脚本旨在为提高研发、测试、运维快速部署应用环境而编写。 脚本遵循拿来即用的原则快速完成 CentOS 系统各应用环境部署工作。 统一研发、测试、生产环境的部署模式、部署结构、…

Linux安装redis(基于CentOS系统,Ubuntu也可参考)

前言:本文内容为实操记录,仅供参考! 一、下载并解压Redis 1、执行下面的命令下载redis:wget https://download.redis.io/releases/redis-6.2.6.tar.gz 2、解压redis:tar xzf redis-6.2.6.tar.gz 3、移动redis目录&a…

D. Friends and Subsequences 线段树上二分

有个细节&#xff0c;就是query的时候的顺序&#xff0c;不注意到直接T飞&#xff0c;分析知道如果它只在一边的话你直接一边 可以保证复杂度 #include<iostream> #include<cstring> #include<algorithm>const int N 2e510; using namespace std; using ll…

MySQL 数据库的日志管理、备份与恢复

一. 数据库备份 1.数据备份的重要性 备份的主要目的是灾难恢复。 在生产环境中&#xff0c;数据的安全性至关重要。 任何数据的丢失都可能产生严重的后果。 造成数据丢失的原因&#xff1a; 程序错误人为,操作错误,运算错误,磁盘故障灾难&#xff08;如火灾、地震&#xff0…

比较AI编程工具Copilot、Tabnine、Codeium和CodeWhisperer

主流的几个AI智能编程代码助手包括Github Copilot、Codeium、Tabnine、Replit Ghostwriter和Amazon CodeWhisperer。 你可能已经尝试过其中的一些&#xff0c;也可能还在不断寻找最适合自己或公司使用的编程助手。但是&#xff0c;这些产品都会使用精选代码示例来实现自我宣传…

Vue挂载全局方法

简介&#xff1a;有时候&#xff0c;频繁调用的函数&#xff0c;我们需要把它挂载在全局的vue原型上&#xff0c;方便调用&#xff0c;具体怎么操作&#xff0c;这里来记录一下。 一、这里以本地存储的方法为例 var localStorage window.localStorage; const db {/** * 更新…

如何在 Mac Pro 上恢复丢失的数据?

无论您多么努力&#xff0c;几乎不可能永远不会无意中删除 Mac 上的文件。当您得知删除后清空了垃圾箱时&#xff0c;您的处境可能看起来很黯淡。不要灰心。我们将教您如何使用本机操作系统功能或数据恢复工具恢复丢失的数据。奇客数据恢复Mac版可帮助恢复已从 Mac Pro 计算机上…

npm救赎之道:探索--save与--save--dev的神秘力量!

目录 1. --save和--save-dev是什么&#xff1f;2. 区别与应用场景--save--save-dev 3. 生产环境与开发环境4. 实际应用示例--save--save-dev 5. 总结 在现代软件开发中&#xff0c;npm&#xff08;Node Package Manager&#xff09;扮演着不可或缺的角色&#xff0c;为开发者提…

Java八股文(JVM)

Java八股文のJVM JVM JVM 什么是Java虚拟机&#xff08;JVM&#xff09;&#xff1f; Java虚拟机是一个运行Java字节码的虚拟机。 它负责将Java程序翻译成机器代码并执行。 JVM的主要组成部分是什么&#xff1f; JVM包括以下组件&#xff1a; ● 类加载器&#xff08;ClassLoa…

HTTP状态 405 - 方法不允许

方法有问题。 用Post发的请求&#xff0c;然后用Put接收的。 大家也可以看看是不是有这种问题 <body><h1>HTTP状态 405 - 方法不允许</h1><hr class"line" /><p><b>类型</b> 状态报告</p><p><b>消息…

如何使用常用的苹果应用商店上架工具提高应用下载量

摘要 移动应用app上架是开发者关注的重要环节&#xff0c;但常常会面临审核不通过等问题。为帮助开发者顺利完成上架工作&#xff0c;各种辅助工具应运而生。本文探讨移动应用app上架原理、常见辅助工具功能及其作用&#xff0c;最终指出合理使用工具的重要性。 引言 移动应…

python(一)网络爬取

在爬取网页信息时&#xff0c;需要注意网页爬虫规范文件robots.txt eg:csdn的爬虫规范文件 csdn.net/robots.txt User-agent: 下面的Disallow规则适用于所有爬虫&#xff08;即所有用户代理&#xff09;。星号*是一个通配符&#xff0c;表示“所有”。 Disallow&…

Groovy结合Java在生产中的落地实战

Groovy简介 Groovy是用于Java虚拟机的一种敏捷的动态语言&#xff0c;是一种成熟的面向对象编程语言&#xff0c;又是一种纯粹的脚本语言。Groovy运行在JVM环境上&#xff0c;在语法上兼具java 语言和脚本语言特点&#xff0c;大大简化了语法。同时又具有闭包和动态语言中的其…

系统分析师-软件开发模型总结

前言 软件工程模型也称软件开发模型。它是指软件开发全部过程、活动和任务的结构框架&#xff0c;通过该模型能清晰、直观地表达软件开发全过程&#xff0c;明确地规定要完成的主要活动和任务&#xff0c;它奠定了软件项目工作的基础 一、瀑布模型&#xff08;Waterfall Model…

Web Components使用(一)

在使用Web Components之前&#xff0c;我们先看看上一篇文章Web Components简介&#xff0c;其中提到了相关的接口、属性和方法。 正是这些接口、属性和方法才实现了Web Components的主要技术&#xff1a;Custom elements&#xff08;自定义元素&#xff09;、Shadow DOM&#…