openGauss 6.0一主二备高可用架构部署,可靠很行

2024-06-18 13:12

本文主要是介绍openGauss 6.0一主二备高可用架构部署,可靠很行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验,
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理

文章目录

    • 前言
    • 📣 1.官方说明及下载
    • 📣 2.部署前准备
      • ✨ 2.1 环境准备
      • ✨ 2.2 yum配置
      • ✨ 2.3 关闭SeLinux
      • ✨ 2.4 关闭防火墙
      • ✨ 2.5 设置时区和时间
      • ✨ 2.6 内核修改
      • ✨ 2.7 关闭透明大页
      • ✨ 2.8 python安装
    • 📣 3.一主二备安装
      • ✨ 3.1 前提条件
      • ✨ 3.2 安装包解压
      • ✨ 3.3 XML配置文件
      • ✨ 3.4 用户及组创建
      • ✨ 3.5 初始化安装
      • ✨ 3.6 正式安装
    • 📣 4.安装验证
      • ✨ 4.1 集群状态检查
      • ✨ 4.2 数据库登陆
      • ✨ 4.3 集群启动及关闭

前言

openGauss 6.0一主二备高可用架构部署体验后感觉,可靠很行

📣 1.官方说明及下载

6.0.0版本下载地址
https://opengauss.org/zh/download/
官方gitee地址
https://gitee.com/opengauss/openGauss-server/issues

在这里插入图片描述

📣 2.部署前准备

✨ 2.1 环境准备

##操作系统
$ cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)##主机host设置
主库:hostnamectl set-hostname gaussdb1
备库1:hostnamectl set-hostname gaussdb2
备库2:hostnamectl set-hostname gaussdb3也可以通过以下办法修改主机名
cat>> /etc/hosts <<EOF
192.168.3.10 gaussdb1
192.168.3.11 gaussdb2
192.168.3.12 gaussdb3
EOF

✨ 2.2 yum配置

注:3个节点均做如下操作,请将操作系统镜像文件上传到服务器
##创建挂载目录
mount /dev/sr0 /mnt
##yum源配置文件
cd /etc/yum.repos.d/
mkdir bak
mv CentOS* bak
##配置yum文件
cat>/etc/yum.repos.d/local.repo<<EOF
[base-local]
name=CentOS7-local
baseurl=file:///mnt
enabled=1
gpgcheck=0
EOF
#清空并重载yum
yum clean all
yum makecache
##安装依赖包
yum install libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb-core readline-devel libnsl expect -y

✨ 2.3 关闭SeLinux

vi /etc/selinux/config
修改"SELINUX"的值"disabled",执行:wq保存并退出修改,重新启动操作系统通过以下方法也可以修改
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0注:主库和备库同时修改,然后重启服务器
$ /usr/sbin/sestatus
SELinux status:                 disabled

✨ 2.4 关闭防火墙

注:主备库均做如下操作
1.检查防火墙是否关闭
systemctl status firewalld
若防火墙状态显示为active (running),则表示防火墙未关闭
若防火墙状态显示为inactive (dead),则无需再关闭防火墙
2.关闭防火墙并禁止开机重启
systemctl disable firewalld.service
systemctl stop firewalld.service

✨ 2.5 设置时区和时间

注:主备库均做如下操作[root@gaussdb1 ~]# timedatectlLocal time: Sun 2024-06-16 20:33:19 CSTUniversal time: Sun 2024-06-16 12:33:19 UTCRTC time: Mon 2024-06-17 09:39:14Time zone: Asia/Shanghai (CST, +0800)NTP enabled: no
NTP synchronized: noRTC in local TZ: noDST active: n/a为了保证主备节点时间同步,需要设置ntp时间同步即可
yum install -y ntp启动ntp服务,并开机自启动
systemctl start ntpd
systemctl enable ntpd[root@gaussdb1 ~]# ntpq -premote           refid      st t when poll reach   delay   offset  jitter
==============================================================================time.cloudflare .INIT.          16 u    -   64    0    0.000    0.000   0.000196.81.48.144.r .INIT.          16 u    -   64    0    0.000    0.000   0.000ntp5.flashdance 194.58.202.20    2 u    1   64    1  154.714  -759496 353.096dns1.synet.edu. .BDS.            1 u    2   64    1   77.043  -759497 205.201

✨ 2.6 内核修改

##系统资源及内核参数
# vi /etc/security/limits.confecho "* soft nofile 1000000">>/etc/security/limits.conf
echo "* hard nofile 1000000">>/etc/security/limits.conf
echo "* soft nproc unlimited">>/etc/security/limits.conf
echo "* hard nproc unlimited">>/etc/security/limits.confvi /etc/security/limits.d/90-nproc.conf
* soft nproc unlimited ## 系统支持的最大进程数echo "* soft nproc unlimited">>/etc/security/limits.d/90-nproc.conf内核参数配置
vi /etc/sysctl.conf
sysctl -p # 使内核参数生效net.ipv4.conf.ens33.rp_filter=1
虚拟机没有万兆网卡不能配置该项,否则认证报错!cat>> /etc/sysctl.conf <<EOF
net.ipv4.tcp_retries1=5
net.ipv4.tcp_syn_retries=5
kernel.shmmax = 1932735283
kernel.shmall = 483183820
kernel.shmmni = 4096
#kernel.sem=  500 5120000 2500 9000
kernel.sem = 50100 128256000 50100 2560
EOFsysctl -p # 使内核参数生效

✨ 2.7 关闭透明大页

查看透明大页是否启用,[always] never 表示已启用,always [never] 表示已禁用。# 各服务器节点均执行
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabledcat >> /etc/rc.local  <<EOF
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
EOFchmod +x /etc/rc.d/rc.localgrep Huge /proc/meminfo
HugePages_Total:显示0 表示设置成功

✨ 2.8 python安装

[root@gaussdb1 ~]# python -V
Python 2.7.5CentOS:支持Python 3.6.X,python需要通过--enable-shared方式编译
1.依赖包安装
[root@gaussdb1 ~]# yum install -y zlib*
[root@gaussdb1 ~]# rpm -qa | grep zlib
zlib-1.2.7-18.el7.x86_64
zlib-devel-1.2.7-18.el7.x86_64--安装gcc
yum install gcc2.安装包下载
python官网 https://www.python.org/downloads/release/python-3615/下载安装包即可
安装包为:Python-3.6.15.tgz3.解压并编译
cd /opt
tar -zxvf Python-3.6.15.tgz
cd Python-3.6.15/
./configure --prefix=/usr/local/python3 --enable-shared4.编译安装
make -j4
make install
注意:make编译时间比较长,耐心等待5.OS上设置python的软连接
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip6.环境校验
python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directorycp /usr/local/python3/lib/libpython3.6m.so.1.0 /usr/lib64/[root@gaussdb1 ~]# python3 -V
Python 3.6.15[root@gaussdb1 ~]# python3
Python 3.6.15 (default, Sep 30 2023, 08:38:09) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

在这里插入图片描述

📣 3.一主二备安装

✨ 3.1 前提条件

前提条件:
已完成用户组和普通用户的创建。
所有服务器操作系统和网络均正常运行。
普通用户必须有数据库包解压路径、安装路径的读、写和执行操作权限,并且安装路径必须为空。
普通用户对下载的openGauss压缩包有执行权限。
安装前请检查指定的openGauss端口矩阵中所有端口是否被占用,如果被占用请更改端口或者停止当前使用端口进程。

✨ 3.2 安装包解压

注意:上传安装包到服务器/opt/openGauss,主节点操作即可
mkdir /opt/openGauss
mkdir /openGauss  --openGauss安装目录##解压安装包
chmod 755 -R /opt/openGauss
cd /opt/openGauss
[root@gaussdb1 openGauss]# tar -zxvf openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz
[root@gaussdb1 openGauss]# ll
total 315752
drwxr-xr-x.  2 root root      4096 Jun 16 21:03 openGauss
-rw-rw-rw-.  1 root root 149449208 Jun 16 20:47 openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz
-rw-r--r--.  1 root root       109 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit-cm.sha256
-rw-r--r--.  1 root root  22466710 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit-cm.tar.gz
-rw-r--r--.  1 root root        65 Mar 31 12:15 openGauss-6.0.0-RC1-CentOS-64bit-om.sha256
-rw-r--r--.  1 root root  23122340 Mar 31 12:15 openGauss-6.0.0-RC1-CentOS-64bit-om.tar.gz
-rw-r--r--.  1 root root        65 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit.sha256
-rw-r--r--.  1 root root 104672194 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit.tar.bz2
drwxr-xr-x. 17  501  501      4096 Jun 16 20:51 Python-3.6.15
-rw-rw-rw-.  1 root root  23035095 Jun 16 20:47 Python-3.6.15.tgz
drwxr-xr-x.  2 root root      4096 Oct 31  2018 rh
-rw-------.  1 root root        65 Mar 31 12:14 upgrade_sql.sha256
-rw-------.  1 root root    541779 Mar 31 12:14 upgrade_sql.tar.gz[root@gaussdb1 openGauss]# tar -zxvf openGauss-6.0.0-RC1-CentOS-64bit-om.tar.gz
[root@gaussdb1 openGauss]# ll
total 315764
drwxr-xr-x. 19 root root      4096 Mar 31 12:15 lib
drwxr-xr-x.  2 root root      4096 Jun 16 21:03 openGauss
-rw-rw-rw-.  1 root root 149449208 Jun 16 20:47 openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz
-rw-r--r--.  1 root root       109 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit-cm.sha256
-rw-r--r--.  1 root root  22466710 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit-cm.tar.gz
-rw-r--r--.  1 root root        65 Mar 31 12:15 openGauss-6.0.0-RC1-CentOS-64bit-om.sha256
-rw-r--r--.  1 root root  23122340 Mar 31 12:15 openGauss-6.0.0-RC1-CentOS-64bit-om.tar.gz
-rw-r--r--.  1 root root        65 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit.sha256
-rw-r--r--.  1 root root 104672194 Mar 31 12:16 openGauss-6.0.0-RC1-CentOS-64bit.tar.bz2
drwxr-xr-x. 17  501  501      4096 Jun 16 20:51 Python-3.6.15
-rw-rw-rw-.  1 root root  23035095 Jun 16 20:47 Python-3.6.15.tgz
drwxr-xr-x.  2 root root      4096 Oct 31  2018 rh
drwxr-xr-x. 11 root root      4096 Mar 31 12:15 script
-rw-------.  1 root root        65 Mar 31 12:14 upgrade_sql.sha256
-rw-------.  1 root root    541779 Mar 31 12:14 upgrade_sql.tar.gz
-rw-r--r--.  1 root root        36 Mar 31 12:15 version.cfg

✨ 3.3 XML配置文件

安装openGauss前需要创建cluster_config.xml文件。
cluster_config.xml文件包含部署openGauss的服务器信息、安装路径、IP地址以及端口号等。本次部署以一主二备的方式创建XML配置文件编辑配置XML文件:
vi /opt/openGauss/cluster_config.xml##CM版本
<?xml version="1.0" encoding="UTF-8"?> 
<ROOT> <!-- openGauss整体信息 --> <CLUSTER> <PARAM name="clusterName" value="Cluster_opengauss" /> <PARAM name="nodeNames" value="gaussdb1,gaussdb2,gaussdb3" /> <!-- 数据库安装目录,与数据库所需其它路径相互独立,没有包含关系--><PARAM name="gaussdbAppPath" value="/openGauss/app" /><!-- 日志目录--><PARAM name="gaussdbLogPath" value="/openGauss/log/omm" /><!-- 临时文件目录--><PARAM name="tmpMppdbPath" value="/openGauss/tmp"/><!-- 数据库工具目录--><PARAM name="gaussdbToolPath" value="/openGauss/om" /><!-- 数据库core文件目录--><PARAM name="corePath" value="/openGauss/corefile"/><!-- 节点IP,与数据库节点名称列表一一对应 --><PARAM name="backIp1s" value="192.168.3.10,192.168.3.11,192.168.3.12"/> </CLUSTER> <!-- 每台服务器上的节点部署信息 --> <DEVICELIST> <!-- node1上的节点部署信息 --> <DEVICE sn="gaussdb1"> <PARAM name="name" value="gaussdb1"/> <PARAM name="azName" value="AZ1"/> <PARAM name="azPriority" value="1"/> <!-- 如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP --> <PARAM name="backIp1" value="192.168.3.10"/> <PARAM name="sshIp1" value="192.168.3.10"/> <!--CM节点部署信息--> <PARAM name="cmsNum" value="1"/> <PARAM name="cmServerPortBase" value="15000"/> <PARAM name="cmServerListenIp1" value="192.168.3.10,192.168.3.11,192.168.3.12"/> <PARAM name="cmServerHaIp1" value="192.168.3.10,192.168.3.11,192.168.3.12"/> <PARAM name="cmServerlevel" value="1"/> <PARAM name="cmServerRelation" value="gaussdb1,gaussdb2,gaussdb3"/> <PARAM name="cmDir" value="/openGauss/cm"/> <!--dn--><PARAM name="dataNum" value="1"/> <PARAM name="dataPortBase" value="15400"/> <PARAM name="dataNode1" value="/openGauss/data/dn,gaussdb2,/openGauss/data/dn,gaussdb3,/openGauss/data/dn"/><PARAM name="dataNode1_syncNum" value="0"/> </DEVICE> <!-- node2上的节点部署信息,其中“name”的值配置为主机名称 --> <DEVICE sn="gaussdb2"> <PARAM name="name" value="gaussdb2"/> <PARAM name="azName" value="AZ1"/> <PARAM name="azPriority" value="1"/> <!-- 如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP --> <PARAM name="backIp1" value="192.168.3.11"/> <PARAM name="sshIp1" value="192.168.3.11"/> <!-- cm --> <PARAM name="cmServerPortStandby" value="15000"/> <PARAM name="cmDir" value="/openGauss/cm"/></DEVICE> <!-- node3上的节点部署信息,其中“name”的值配置为主机名称 --> <DEVICE sn="gaussdb3"> <PARAM name="name" value="gaussdb3"/> <PARAM name="azName" value="AZ1"/> <PARAM name="azPriority" value="1"/> <!-- 如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP --> <PARAM name="backIp1" value="192.168.3.12"/> <PARAM name="sshIp1" value="192.168.3.12"/> <!-- cm --> <PARAM name="cmServerPortStandby" value="15000"/> <PARAM name="cmDir" value="/openGauss/cm"/></DEVICE> </DEVICELIST> 
</ROOT>

✨ 3.4 用户及组创建

注:主备库均操作
##创建用户组dbgrp
[root@gaussdb1 ~]# groupadd dbgrp
##创建用户组dbgrp下的普通用户omm,并设置密码为Gauss_123
useradd -g dbgrp omm
passwd omm

✨ 3.5 初始化安装

chmod 775 /openGauss -R
chown omm:dbgrp /openGauss -R
[root@gaussdb1 ~]# cd /opt/openGauss/script
[root@gaussdb1 ~]# export LD_LIBRARY_PATH=/opt/openGauss/script/gspylib/clib:$LD_LIBRARY_PATH
注:只在主库上做操作即可,确保主库和备库root密码相同,用户和组以及目录授权同时在主备库操作
[root@gaussdb1 script]# ./gs_preinstall -U omm -G dbgrp -X /opt/openGauss/cluster_config.xml --sep-env-file=/home/omm/envfile

在这里插入图片描述

✨ 3.6 正式安装

#主库执行即可
在执行过程中,用户需根据提示输入数据库的密码,密码具有一定的复杂度,为保证用户正常使用该数据库,请记住输入的数据库密码设置的密码要符合复杂度要求:
最少包含8个字符,最多包含16个字符。
不能和用户名、当前密码(ALTER)、或当前密码反序相同。
至少包含大写字母(A-Z)、小写字母(a-z)、数字、非字母数字字符(限定为~!@#$%^&*()-_=+\|[{}];:,<.>/?)四类字符中的三类字符。##登录到openGauss的主机,并切换到omm用户
[root@gaussdb1 ~]# su - omm
[omm@gaussdb1 ~]$ ll /opt/openGauss/cluster_config.xml
-rw------- 1 omm dbgrp 3665 Jun 16 23:40 /opt/openGauss/cluster_config.xml[omm@gaussdb1 ~]$ source /home/omm/envfile
[omm@gaussdb1 ~]$ gs_install -X /opt/openGauss/cluster_config.xml

在这里插入图片描述

📣 4.安装验证

✨ 4.1 集群状态检查

# 通过openGauss提供的gs_om工具可以完成数据库状态检查以omm用户身份登录服务器。
执行如下命令检查数据库状态是否正常,"cluster_state"显示"Normal"表示数据库可正常使用[root@gaussdb1 ~]# su - omm
[omm@gaussdb1 ~]$ gs_om -t status
-----------------------------------------------------------------------cluster_state             : Normal
redistributing            : No
balanced                  : Yes-----------------------------------------------------------------------[omm@gaussdb1 ~]$ gs_om -t status --detail
[  CMServer State   ]node        node_ip         instance                     state
----------------------------------------------------------------
1  gaussdb1 192.168.3.10    1    /openGauss/cm/cm_server Standby
2  gaussdb2 192.168.3.11    2    /openGauss/cm/cm_server Standby
3  gaussdb3 192.168.3.12    3    /openGauss/cm/cm_server Primary[   Cluster State   ]cluster_state   : Normal
redistributing  : No
balanced        : Yes
current_az      : AZ_ALL[  Datanode State   ]node        node_ip         instance                       state            
----------------------------------------------------------------------------
1  gaussdb1 192.168.3.10    6001 15400  /openGauss/data/dn P Primary Normal
2  gaussdb2 192.168.3.11    6002 15400  /openGauss/data/dn S Standby Normal
3  gaussdb3 192.168.3.12    6003 15400  /openGauss/data/dn S Standby Normal

✨ 4.2 数据库登陆

[omm@gaussdb1 ~]$ gsql -d postgres -p 15400
gsql ((openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-03-31 11:59:31 commit 0 last mr  )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.openGauss=# \lList of databasesName    | Owner | Encoding  | Collate | Ctype | Access privileges 
-----------+-------+-----------+---------+-------+-------------------postgres  | omm   | SQL_ASCII | C       | C     | template0 | omm   | SQL_ASCII | C       | C     | =c/omm           +|       |           |         |       | omm=CTc/ommtemplate1 | omm   | SQL_ASCII | C       | C     | =c/omm           +|       |           |         |       | omm=CTc/omm
(3 rows)openGauss=#  \copyright
GaussDB Kernel Database Management System
Copyright (c) Huawei Technologies Co., Ltd. 2018. All rights reserved.openGauss=# \duList of rolesRole name |                                                    Attributes                                                    | Member of 
-----------+------------------------------------------------------------------------------------------------------------------+-----------omm       | Sysadmin, Create role, Create DB, Replication, Administer audit, Monitoradmin, Operatoradmin, Policyadmin, UseFT | {}[omm@gaussdb1 ~]$ ps ux | grep gaussdb
omm       79727  0.0  0.0  72472   964 ?        Ss   10:30   0:00 ssh-agent -a /home/omm/gaussdb_tmp/gauss_socket_tmp
omm       97072  3.8 31.1 6535636 1202496 ?     Ssl  10:50   0:24 /openGauss/app/bin/gaussdb -D /openGauss/data/dn -M primary
omm      100396  0.0  0.0 110476   896 pts/0    S+   11:01   0:00 grep --color=auto gaussdb

在这里插入图片描述

✨ 4.3 集群启动及关闭

##集群关闭
[omm@gaussdb1 ~]$  gs_om -t stop
Stopping cluster.
=========================================
Successfully stopped cluster.
=========================================
End stop cluster.##集群启动
[[omm@gaussdb1 ~]$ gs_om -t start
Starting cluster.
======================================================================
Successfully started primary instance. Wait for standby instance.
======================================================================
.
Successfully started cluster.
======================================================================
cluster_state      : Normal
redistributing     : No
node_count         : 3
Datanode Stateprimary           : 1standby           : 2secondary         : 0cascade_standby   : 0building          : 0abnormal          : 0down              : 0Successfully started cluster.[omm@gaussdb1 ~]$ gs_om -t status --detail
[  CMServer State   ]node        node_ip         instance                     state
----------------------------------------------------------------
1  gaussdb1 192.168.3.10    1    /openGauss/cm/cm_server Standby
2  gaussdb2 192.168.3.11    2    /openGauss/cm/cm_server Standby
3  gaussdb3 192.168.3.12    3    /openGauss/cm/cm_server Primary[   Cluster State   ]cluster_state   : Normal
redistributing  : No
balanced        : Yes
current_az      : AZ_ALL[  Datanode State   ]node        node_ip         instance                       state            
----------------------------------------------------------------------------
1  gaussdb1 192.168.3.10    6001 15400  /openGauss/data/dn P Primary Normal
2  gaussdb2 192.168.3.11    6002 15400  /openGauss/data/dn S Standby Normal
3  gaussdb3 192.168.3.12    6003 15400  /openGauss/data/dn S Standby Normal

这篇关于openGauss 6.0一主二备高可用架构部署,可靠很行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1072092

相关文章

闲置电脑也能活出第二春?鲁大师AiNAS让你动动手指就能轻松部署

对于大多数人而言,在这个“数据爆炸”的时代或多或少都遇到过存储告急的情况,这使得“存储焦虑”不再是个别现象,而将会是随着软件的不断臃肿而越来越普遍的情况。从不少手机厂商都开始将存储上限提升至1TB可以见得,我们似乎正处在互联网信息飞速增长的阶段,对于存储的需求也将会不断扩大。对于苹果用户而言,这一问题愈发严峻,毕竟512GB和1TB版本的iPhone可不是人人都消费得起的,因此成熟的外置存储方案开

mybatis的整体架构

mybatis的整体架构分为三层: 1.基础支持层 该层包括:数据源模块、事务管理模块、缓存模块、Binding模块、反射模块、类型转换模块、日志模块、资源加载模块、解析器模块 2.核心处理层 该层包括:配置解析、参数映射、SQL解析、SQL执行、结果集映射、插件 3.接口层 该层包括:SqlSession 基础支持层 该层保护mybatis的基础模块,它们为核心处理层提供了良好的支撑。

百度/小米/滴滴/京东,中台架构比较

小米中台建设实践 01 小米的三大中台建设:业务+数据+技术 业务中台--从业务说起 在中台建设中,需要规范化的服务接口、一致整合化的数据、容器化的技术组件以及弹性的基础设施。并结合业务情况,判定是否真的需要中台。 小米参考了业界优秀的案例包括移动中台、数据中台、业务中台、技术中台等,再结合其业务发展历程及业务现状,整理了中台架构的核心方法论,一是企业如何共享服务,二是如何为业务提供便利。

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

在 Windows 上部署 gitblit

在 Windows 上部署 gitblit 在 Windows 上部署 gitblit 缘起gitblit 是什么安装JDK部署 gitblit 下载 gitblit 并解压配置登录注册为 windows 服务 修改 installService.cmd 文件运行 installService.cmd运行 gitblitw.exe查看 services.msc 缘起

Solr部署如何启动

Solr部署如何启动 Posted on 一月 10, 2013 in:  Solr入门 | 评论关闭 我刚接触solr,我要怎么启动,这是群里的朋友问得比较多的问题, solr最新版本下载地址: http://www.apache.org/dyn/closer.cgi/lucene/solr/ 1、准备环境 建立一个solr目录,把solr压缩包example目录下的内容复制

利用命令模式构建高效的手游后端架构

在现代手游开发中,后端架构的设计对于支持高并发、快速迭代和复杂游戏逻辑至关重要。命令模式作为一种行为设计模式,可以有效地解耦请求的发起者与接收者,提升系统的可维护性和扩展性。本文将深入探讨如何利用命令模式构建一个强大且灵活的手游后端架构。 1. 命令模式的概念与优势 命令模式通过将请求封装为对象,使得请求的发起者和接收者之间的耦合度降低。这种模式的主要优势包括: 解耦请求发起者与处理者

Sentinel 高可用流量管理框架

Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。 Sentinel 具有以下特性: 丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应

JAVA用最简单的方法来构建一个高可用的服务端,提升系统可用性

一、什么是提升系统的高可用性 JAVA服务端,顾名思义就是23体验网为用户提供服务的。停工时间,就是不能向用户提供服务的时间。高可用,就是系统具有高度可用性,尽量减少停工时间。如何用最简单的方法来搭建一个高效率可用的服务端JAVA呢? 停工的原因一般有: 服务器故障。例如服务器宕机,服务器网络出现问题,机房或者机架出现问题等;访问量急剧上升,导致服务器压力过大导致访问量急剧上升的原因;时间和