ubuntu22.04下hadoop3.3.6+hbase2.5.6+phoenix5.1.3开发环境搭建

一、涉及软件包资源清单

        1、java 这里使用的是openjdk

        2、hadoop-3.3.6.tar.gz

        3、hbase-2.5.6-hadoop3-bin.tar.gz

        4、phoenix-hbase-2.5-5.13-bin.tar.gz

        5、apache-zookeeper-3.8.3-bin.tar.gz

        6、openssl-3.0.12.tar.gz 

二、安装

        1、操作系统环境准备

  •  换源
sudo vim /etc/apt/sources.list 

打开资源列表文件进行查看,将内容修改为如下(如果是国内源不管是清华的阿里的都可以,就不用更改。):

deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
 

sudo apt-get update
  • 主机名配置 
sudo vim /etc/hostname

在这里写下你喜欢的主机名,规则:好记、识别度高、不与其它系统名称冲突,别太简单也别太复杂。写完了把它记住一会还要用。保存->退出。

sudo vim /etc/hosts

在这里将你机器的IP地址和刚起好的主机名一并写在一行里,如下图蓝字部分。

 127.0.0.1       localhost
172.22.10.250   xxx-ytA8000t-01

保存->退出->重启系统。 

  • ssh免密

首先查看系统是否安装了openssh服务

service sshd status

 ● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-11-15 11:14:32 CST; 2h 53min ago
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 1099 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 1147 (sshd)
      Tasks: 1 (limit: 18911)
     Memory: 7.9M
        CPU: 236ms
     CGroup: /system.slice/ssh.service
             └─1147 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"

如果提示不是这样,请查明原因,提示没有安装可以使用如下命令安装,-y参数的作用是在安装软件包的过程中自动回答“yes”,而不需要用户手动确认。 

sudo apt install -y openssh-server

安装完成后使用上面的状态查看命令查看服务的状态,直到状态正常为止。 修改配置文件允许root用户登录,允许公钥登录

sudo vim /etc/ssh/sshd_config

PermitRootLogin yes

PubkeyAuthentication yes

去掉以上两项前面的注释 ,退出保存,重启ssh服务

service sshd restart

 实际过程中不太灵光,直接大招儿 sudo reboot ,有点夸张但却真香。这东西是自启动,重启后使用以下命令生成公钥:

ssh-keygen

因为系统默认会使用rsa加密算法,所以这里就不费力的指定了(至于RSA和DSA算法的详细内容请自行查阅)。因为是开发环境所以输入命令后三次回车全部采用默认即可,不用输入任何内容。然后将公钥复制到authorized_keys中去,命令如下:

cd ~/.ssh
ssh-copy-id -i id_rsa.pub authorized_keys

ssh登录本机试试

ssh localhost

第一次登录会问是否把此机器放到已知机器中去,回答 yes 然后回车,后面它就不问了。 这里直到搞到输入命令后什么也不问就给进系统为此,不成功的话查检自己的配置文件中配置的内容是否正确,打开 authorized_key和id_rsa.pub进行比较看两个key是否相同。

  • openssl安装

 首先查看openssl的版本

openssl version

 OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)

切换到你下载openssl源码包的目录,解压后进入到源码包,执行如下三个命令:

./Configure

配置的参数说明可以在它的github上找到,这里就不复制了,有需要的自行去查看。链接 

make
sudo make install

 *注意这最后一句,这里要加入sudo,因为没有root权限/usr/local目录不允许写入。整个过程当中如果有依赖包缺失它会给出提示,根据提示安装就行。安装完成后再次查看版本

OpenSSL 3.1.0 14 Mar 2023 (Library: OpenSSL 3.1.0 14 Mar 2023)

  • 禁用IPv6 

默认情况下hbase启动后会跑在ipv6协议下,为了方便这里把ipv6禁用掉,全部使用ipv4协议。 

sudo vim /etc/default/grub

将如下 两行的内容部分换成下面经字部分 ,设置会在重启系统后生效。

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ipv6.disable=1"
GRUB_CMDLINE_LINUX="ipv6.disable=1"

sudo update-grubsudo reboot

 至此环境准备完毕。

        2、java环境配置

  因为hadoop3支持java11,所以这里使用openjdk11进行配置。使用命令

 sudo apt install openjdk-11-jdk

安装完成使用命令: java -version 查看是否安装成功

openjdk version "11.0.20.1" 2023-08-24
OpenJDK Runtime Environment (build 11.0.20.1+1-post-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 11.0.20.1+1-post-Ubuntu-0ubuntu122.04, mixed mode, sharing) 

java的默认安装路径在/usr/lib/jvm下,跳转到此目录下找到以amd64结尾的文件夹就是java的根目录了。将这个根目录添加到系统的profile中去。

sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile

         3、zookeeper部署

跳转到zookeeper 下载目录,执行解压

tar -zxvf apache-zookeeper-3.8.3-bin.tar.gz -C /opt/
cd /opt/apache-zookeeper-3.8.3/conf
cp zoo_sample.cfg zoo.cfg
sudo vim zoo.cfg

在配置文件里指定数据存放目录,不要用默认的/tmp 

 dataDir=/opt/apache-zookeeper-3.8.3/data

这里的data目录是要自己建的

mkdir data

 添加全局配置

sudo vim /etc/profile

export ZOOKEEPER_HOME=/opt/apache-zookeeper-3.8.3

export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH

使配置生效并启动服务 

source /etc/profile
zkServer.sh start
jps

2359 QuorumPeerMain  这就是zookeeper的进程
27098 Jps

        4、hadoop部署

跳转到你hadoop下载目录,执行解压

tar -zxvf hadoop-3.3.6.tar.gz -C /opt/
cd /opt/hadoop-3.3.6

 将配置文件目录映射到系统中去,这里使用软链接(这东西的好处是一处更改随处可用)

ln -s /opt/hadoop-3.3.6/etc/hadoop /etc/hadoop

修改hdfs-site.xml和core-site.xml两个配置文件

sudo vim /etc/hadoop/hdfs-site.xml

 <configuration>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
</configuration>

sudo vim /etc/hadoop/core-site.xml

<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://你在上面步骤中起的主机名:9000(hadoop3和hadoop2这里的端口不一样)</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>指定到你的数据盘中去(就是空间最大的那个地儿)</value>
        </property>
        <property>
                <name>hadoop.http.staticuser.user</name>
                <value>你当前进系统的用户名(不配置的话你在web管理界面建文件夹传文件时报错)</value>
        </property>
</configuration>

 将hadoop配置进系统的环境变量里

sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

export ZOOKEEPER_HOME=/opt/apache-zookeeper-3.8.3

export HADOOP_HOME=/opt/hadoop-3.3.6
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$PATH

source /etc/profile

以当前用户启动hadoop服务,不要加sudo,那是以root启动的,会很麻烦。 

start-all.sh
jps

3394 NodeManager
2359 QuorumPeerMain
3015 SecondaryNameNode
2793 DataNode
3244 ResourceManager
2588 NameNode
26847 Jps 

初始化

hadoop namenode -format

打开浏览器输入服务器ip + 端口9870查看状态    http://172.22.10.250:9870

  检查hadoop native状态

hadoop checknative -a

2023-11-15 16:52:38,350 INFO bzip2.Bzip2Factory: Successfully loaded & initialized native-bzip2 library system-native
2023-11-15 16:52:38,352 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library
2023-11-15 16:52:38,385 INFO nativeio.NativeIO: The native code was built without PMDK support.
Native library checking:
hadoop:  true /opt/hadoop-3.3.6/lib/native/libhadoop.so.1.0.0
zlib:    true /lib/x86_64-linux-gnu/libz.so.1
zstd  :  true /lib/x86_64-linux-gnu/libzstd.so.1
bzip2:   true /lib/x86_64-linux-gnu/libbz2.so.1
openssl: false EVP_CIPHER_CTX_block_size  这里就是为什么上面要编译安装openssl的原因,不编译安装它会报找不到库的错,这里的false是因为版本不对应引起的。
ISA-L:   true /lib/libisal.so.2 这个也要自己去下源码来编译安装才能通过
PMDK:    false The native code was built without PMDK support.

PMDK 的全称是 Persistent Memory Development Kit,它包含了 Intel 开发的一系列旨在 方便非易失性内在的应用开发的函数库和工具,是为了存储加速的,这里只是开发环境,所以不用理会。

        5、hbase部署 

跳转到hbase下载目录,执行解压

tar -zxvf hbase-2.5.6-hadoop3-bin.tar.gz -C /opt/

 把名改短些

cd /opt
mv hbase-2.5.6-hadoop3-bin hbase-2.5.6

修改配置文件,主要有三处,分别是hbase-env.sh、hbase-site.xml、regionservers

sudo vim /opt/hbase-2.5.6/conf/hbase-env.sh

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

export HBASE_PID_DIR=/opt/hbase-2.5.6/pids

export HBASE_MANAGES_ZK=false

export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"

sudo vim /opt/hbase-2.5.6/conf/hbase-site.xml

  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>配置为true启用伪公布式
  </property>
  <property>
    <name>hbase.tmp.dir</name>
    <value>.</value>
  </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>
  <property>
          <name>hbase.rootdir</name>
          <value>hdfs://上面步骤配置的主机名:9000/hbase</value>
  </property>
  <property>
          <name>hbase.zookeeper.quorum</name>
          <value>上面步骤配置的主机名</value>
  </property>

 <property>
          <name>hbase.zookeeper.property.clientPort</name>
          <value>2181</value>
  </property>

 <!--开启二次索引-->
  <property>
          <name>hbase.regionserver.wal.codec</name>
          <value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
  </property>

sudo vim /opt/hbase-2.5.6/conf/regionservers

172.22.10.250   *这里把默认的localhost改成本机ip,这是其它机器可以访问环境的关键配置,不然只有本机可以访问。

 配置系统环境变量

sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HBASE_HOME=/opt/hbase-2.5.6
export HADOOP_HOME=/opt/hadoop-3.3.6
export ZOOKEEPER_HOME=/opt/apache-zookeeper-3.8.3
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$HBASE_HOME/bin:$ZOOKEEPER_HOME/bin:$PHOENIX_HOME/bin:$PATH
 

source /etc/profile

启动服务,先启动regionserver,后启动master 

hbase-daemon.sh start regionserver
start-hbase.sh
jps

 3394 NodeManager
2359 QuorumPeerMain
27911 Jps
3015 SecondaryNameNode
4231 HMaster
2793 DataNode
3244 ResourceManager
2588 NameNode
3900 HRegionServer

为了验证regionserver的配置是否正确,使用如下命令

netstat -anp |grep 16000

tcp        0      0 172.22.10.250:16000     0.0.0.0:*                          LISTEN            4233/java  
tcp        0      0 172.22.10.250:16000     172.22.10.250:35455     ESTABLISHED 4233/java   
tcp        0      0 172.22.10.250:35455     172.22.10.250:16000     ESTABLISHED 3887/java 

 结果中红字部分已不再是127.0.0.1,所以现在它可以被外部访问了。

         6、phoenix部署

 跳转到phoenix下载目录,执行解压

tar -zxvf phoenix-hbase-2.5-5.1.3-bin.tar.gz -C /opt/cd /optmv phoenix-hbase-2.5-5.1.3-bin phoenix

将server文件复制到hbase的lib目录下 

cd /opt/phoenixcp phoenix-server-hbase-2.5-5.1.3.jar /opt/hbase-2.5.6/lib/cp phoenix-pherf-5.1.3.jar /opt/hbase-2.5.6/lib/

将hadoop的配置文件、hbase的配置文件作软链接到bin目录下

cd /opt/phoenix/binln -s /opt/hadoop-3.3.6/etc/hadoop/hdfs-site.xml /opt/phoenix/bin/hdfs-site.xml
ln -s /opt/hadoop-3.3.6/etc/hadoop/core-site.xml /opt/phoenix/bin/core-site.xml
ln -s /opt/hbase-2.5.6/conf/hbase-site.xml /opt/phoenix/bin/hbase-site.xmlls -l

修改hbase-site.xml文件,在里面增加以下三项属性内容

sudo vim /opt/hbase-2.5.6/conf/hbase-site.xml

<!-- 开启phoenix命名空间的自动映射 -->

<!-- 使用schema和Namespace对应的配置 -->

<!-- 开启用户自定义函数 -->

<property>
          <name>phoenix.schema.isNamespaceMappingEnabled</name>
          <value>true</value>
  </property>
  <property>
          <name>phoenix.schema.mapSystemTablesToNamespace</name>
          <value>true</value>
  </property>

<property>

        <name>phoenix.functions.allowUserDefinedFunctions</name>

        <value>true</value>

</property>

配置环境变量

sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HBASE_HOME=/opt/hbase-2.5.6
export HADOOP_HOME=/opt/hadoop-3.3.6
export ZOOKEEPER_HOME=/opt/apache-zookeeper-3.8.3
export PHOENIX_HOME=/opt/phoenix
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$HBASE_HOME/bin:$ZOOKEEPER_HOME/bin:$PHOENIX_HOME/bin:$PATH
 

source /etc/profile

 启动sqlline.py查检环境配置结果,正确登录后输入命令 !table查看表信息,能出如图所示结果说明系统正常启动。这一步要求机器上有python环境,一般情况下ubuntu自带phthon3。

sqlline.py localhost

这里会出现的问题是,执行sqlline.py后长时间卡住不动的现象,一般是因为之前的hbase配置不正确造成的,解决的办法就是先停止hbase服务,然后去zookeeper中清除hbase信息,到hdfs中清除hbase的文件。 

stop-hbase.sh

 如果一直画点点,就ctrl+c终止后,使用jps查到H开头的那两个进程,直接 kill -9 进程号强行终止服务。

zkCli.shdeleteall /hbase
hadoop fs -rm -r -skipTrash /hbase

然后重新启动hbase即可。

至此所有的配置均已完成,可以进行正常的开发工作了。

三、DBeaver连接phoenix

将phoenix安装目录下的client包复制一份备用,然后把hbase配置文件、hadoop配置文件复制到这个备用的jar包里(怎么打包就不说了,自己作吧)。然后把这个合成的jar包复制到想用的机器上的DBeaver的安装目录下的plugins目录下(纯个人喜好,实际放哪儿都行),然后启动dbeaver添加phoenix连接,在出来的配置界面中选择驱动,把这个包添加进去,就可以正常使用了。

 

这一步有个重点要把原来自带的那个给它删除了,不然添加了后也认不出新的库文件来。选择好了包后,点击下面的“找到类”按钮,把驱动类找到,点选上它,然后点击页面右下方的“确定”按钮,完成驱动添加。 

回到“通用jdbc连接设置”界面,点击驱动属性选项卡添加配置参数

然后回到主要选项卡,将主机地址填写到你服务所在的主机的IP,点击“完成”就可以了。

*如果出现访问不到服务器的问题,需要修改当前机器的hosts文件,在里面把上面配置中服务器里配置hosts的那一条添加到当前主机的hosts配置文件里。 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】MVCC(多版本并发控制)详解

MVCC MVCC概述 MVCC&#xff0c;全称 Multi-Version Concurrency Control &#xff0c;即多版本并发控制。MVCC 是一种并发控制的方法&#xff0c;一般在数据库管理系统中&#xff0c;实现对数据库的并发访问&#xff0c;在编程语言中实现事务内存。 MVCC就是在ReadCommitte…

国民技术Cortex-M0系列单片机IAP升级

考虑到设备部署到现场后有可能需要进行软件升级&#xff0c;之前做过PIC系列单片机的升级&#xff0c;现在想做个国民技术N32G031系列Cortex-M0内核的单片机IAP方案。 因为国民技术系列单片机在很多大程度上都模仿了STM32&#xff0c;所以我想其升级方案极有可能差不多。于是在…

基于SSM的智能仓储系统研究与设计

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

开源与闭源:大模型时代的技术交融与商业平衡

一、开源和闭源的优劣势比较 1.1 开源 优势&#xff1a; 1.技术共享与吸引人才&#xff1a; 开源促进了技术共享&#xff0c;吸引了全球范围内的人才参与大模型的发展&#xff0c;形成了庞大的开发者社区。 2.推动创新&#xff1a; 开源模式鼓励开发者共同参与&#xff0c;推动…

【STM32】RTC(实时时钟)

1.RTC简介 本质&#xff1a;计数器 RTC中断是外部中断&#xff08;EXTI&#xff09; 当VDD掉电的时候&#xff0c;Vbat可以通过电源--->实时计时 STM32的RTC外设&#xff08;Real Time Clock&#xff09;&#xff0c;实质是一个 掉电 后还继续运行的定时器。从定时器的角度…

腾讯云4核8G服务器性能如何多少钱一年?

腾讯云服务器4核8G配置优惠价格表&#xff0c;轻量应用服务器和CVM云服务器均有活动&#xff0c;云服务器CVM标准型S5实例4核8G配置价格15个月1437.3元&#xff0c;5年6490.44元&#xff0c;轻量应用服务器4核8G12M带宽一年446元、529元15个月&#xff0c;腾讯云百科txybk.com分…

牛客——OR36 链表的回文结构(C语言,配图,快慢指针)

本题是没有对C的支持的&#xff0c;但因为Cpp支持C&#xff0c;所以这里就用C写了&#xff0c;可以面向更多用户 链表的回文结构_牛客题霸_牛客网 (nowcoder.com) 思路一&#xff1a;链表翻转 简单的想想整形我们怎么比较&#xff0c;就是将整形A 依次取尾&#xff0c;放到整形…

航天联志Aisino-AISINO26081R服务器通过调BIOS用U盘重新做系统(windows系统通用)

产品名称:航天联志Aisino系列服务器 产品型号:AISINO26081R CPU架构&#xff1a;Intel 的CPU&#xff0c;所以支持Windows Server all 和Linux系统&#xff08;重装完系统可以用某60驱动管家更新所有硬件驱动&#xff09; 操作系统&#xff1a;本次我安装的服务器系统为Serv…

python趣味编程-5分钟实现一个Tic Tac Toe游戏(含源码、步骤讲解)

The Tic Tac Toe In Python是用 Python 编程语言编写的,这个Tic Tac Toe Game In Python是一个简单的基于 GUI 的策略游戏板,非常容易理解和使用。 所有的游戏规则都是一样的,就像我们玩实时井字棋一样,这是一个简单的多人游戏。 Python 中的 Tic Tac Toe 游戏:项目信息 …

物理驱动深度学习方法总结

一、物理驱动深度学习方法总结 现有博主更新物理驱动深度学方法总体介绍 二、 PINN介绍 PINN综述Blog介绍&#xff1a;内嵌物理知识神经网络 &#xff08;Physics Informed Neural Network&#xff0c;简称PINN&#xff09; 是一种科学机器在传统数值领域的应用方法&…

ping命令使用示例解析

【一】ping命令简介 ping &#xff08;Packet Internet Groper&#xff09;是一种因特网包探索器&#xff0c;用于测试网络连接量的程序。ping的一般用途有&#xff1a; ①【测试网络物理链路是否正常】&#xff1a;通过将ICMP(Internet控制消息协议)回显数据包发送到网络终端&…

[PHP]关联和操作MySQL数据库然后将数据库部署到ECS

在Mac电脑上使用VS Code进行PHP开发并关联操作MySQL数据库&#xff0c;然后将数据库部署到ECS。 1.安装PHP和MySQL 确保你的Mac上已经安装了PHP和MySQL。你可以使用Homebrew来安装它们&#xff1a; $ brew install php $ brew install mysql 安装mysql完成后记住这一句: …

蓝桥杯第三周算法竞赛D题E题

发现更多计算机知识&#xff0c;欢迎访问Cr不是铬的个人网站 D迷宫逃脱 拿到题目一眼应该就能看出是可以用动态规划来解决。但是怎么定义dp呢? 这个题增加难度的点就在当所在位置与下一个要去的位置互质的时候&#xff0c;会消耗一把钥匙。当没有钥匙的时候就不能移动了。想…

cocos----刚体

刚体&#xff08;Rigidbody&#xff09; 刚体&#xff08;Rigidbody&#xff09;是运动学&#xff08;Kinematic&#xff09;中的一个概念&#xff0c;指在运动中和受力作用后&#xff0c;形状和大小不变&#xff0c;而且内部各点的相对位置不变的物体。在 Unity3D 中&#xff…

使用 React Flow 构建一个思维导图应用

思维导图是围绕共同主题或问题将思想、概念、信息或任务分组的视觉表示。思维导图应用是一种软件应用&#xff0c;允许您创建、可视化和组织您的思想、想法和信息作为思维导图。本文将向您展示如何实现自己的思维导图应用程序。 在我们开始之前&#xff0c;我想向您展示一下我们…

ke11..--2其他界面也要提取我的locatStarage

获取浏览器里面的本地缓存 localStorage就是我们的浏览器缓存在哪都可以用 下面代码是获取打印到我们的页面上 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> …

Hessian协议详解

前言 Hessian协议是一种基于二进制的轻量级远程调用协议&#xff0c;用于在分布式系统中进行跨语言的通信。它使用简单的二进制格式来序列化和反序列化数据&#xff0c;并支持多种编程语言&#xff0c;如Java、C#、Python等。Hessian协议相对于其他协议的优势在于其简单性和高…

微服务实战系列之Token

前言 什么是“Token”&#xff1f; 它是服务端生成的一串字符串&#xff0c;以作客户端进行请求的一个令牌&#xff0c;当第一次登录后&#xff0c;服务器生成一个Token便返回给客户端&#xff1b;以后客户端只携带此Token请求数据即可。 简言之&#xff0c;Token其实就是用户身…

【2022改良版】学法减分助手PRO小程序源码

【2022改良版】学法减分助手PRO小程序源码 &#xff0c;交管推出个学法减分&#xff0c;每个驾驶员可以把被扣的6分&#xff0c;以看视频答题的形式学习回来&#xff0c;然后答题这个一共二十道题每道题60秒&#xff0c; 有好多人不会&#xff0c;用咱们的小程序就可以模拟练习…

北京君正客户应用案例:掌静脉3D人脸猫眼视屏智能锁

凯迪仕在今年4月发布了智能锁旗舰新品K70 Pro Max掌静脉3D人脸猫眼视屏智能锁&#xff0c;随即这款新品也成了行业热议的焦点。凯迪仕每次新品都力求突破精益求精&#xff0c;不仅追求科技感、高级感与品质感&#xff0c;而且赋予科技温度&#xff0c;带来人文化的关怀。K70 Pr…