当前位置: 首页 > wzjs >正文

网站建设定义是什么意思wordpress seo title

网站建设定义是什么意思,wordpress seo title,网站关键词排名系统,学做软件的网站1.Etcd介绍 Etcd 是一个 golang 编写的分布式、高可用的一致性键值存储系统,用于配置共享和服 务发现等。它使用 Raft 一致性算法来保持集群数据的一致性,且客户端通过长连接 watch 功能,能够及时收到数据变化通知。 以下 是关于 …

1.Etcd介绍

Etcd 是一个 golang 编写的分布式、高可用的一致性键值存储系统,用于配置共享和服
务发现等。它使用 Raft 一致性算法来保持集群数据的一致性,且客户端通过长连接
watch 功能,能够及时收到数据变化通知。 以下
是关于 etcd 的安装与使用方法的详细介绍。
安装 Etcd
首先,需要在你的系统中安装 Etcd Etcd 是一个分布式键值存储,通常用于服务发现
和配置管理。以下是在 Linux 系统上安装 Etcd 的基本步骤

2.安装 Etcd

apt-get install etcd
启动 Etcd 服务:
systemctl start etcd
设置 Etcd 开机自启:
systemctl enable etcd

3.节点配置

如果是单节点集群其实就可以不用进行配置,默认 etcd 的集群节点通信端口为 2380
客户端访问端口为 2379.
若需要修改,则可以配置: /etc/default/etcd

4.运行验证

etcdctl put mykey "etcd test"
如果出现报错:
No help topic for 'put'
则sudo vim /etc/profile 在末尾声明环境变量 ETCDCTL_API=3 以确定 etcd 版本。
完毕后,加载配置文件,并重新执行测试指令

5.安装etcd-cpp-apiv3

etcd-cpp-apiv3 是一个 etcd C++ 版本客户端 API 。它依赖于 mipsasm, boost,
protobuf, gRPC, cpprestsdk 等库。
etcd-cpp-apiv3 GitHub 地址是: https://github.com/etcd-cpp-apiv3/etcd-cpp-apiv3

依赖安装:

sudo apt-get install libboost-all-dev libssl-dev
sudo apt-get install libprotobuf-dev protobuf-compiler-grpc
sudo apt-get install libgrpc-dev libgrpc++-dev 
sudo apt-get install libcpprest-dev

api 框架安装

git clone https://github.com/etcd-cpp-apiv3/etcd-cpp-apiv3.git
cd etcd-cpp-apiv3
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr
make -j$(nproc) && sudo make install

 6.测试样例

put.cpp

#include<etcd/Client.hpp>
#include<etcd/Response.hpp>
#include<etcd/KeepAlive.hpp>
#include<etcd/Watcher.hpp>
#include<chrono>
#include<thread>
#include<string>
#include<iostream>
int main(int argc,char* argv[])
{std::string etcd_host="http://127.0.0.1:2379";//实例化客户端对象etcd::Client client(etcd_host);//获取租约auto keep_alive=client.leasekeepalive(3).get();auto lease_id = keep_alive->Lease();//向etcd新增数据auto resp=client.put("/service/test1","127.0.0.1:8080",lease_id).get();if(resp.is_ok()==false){std::cerr<<"put error:"<<resp.error_message()<<endl;return -1;}auto resp2=client.put("/service/test2","127.0.0.1:9090",lease_id).get();if(resp2.is_ok()==false){std::cerr<<"put error:"<<resp2.error_message()<<endl;return -1;}std::this_thread::sleep_for(std::chrono::seconds(100));return 0;
}

get.cpp

#include<etcd/Client.hpp>
#include<etcd/Response.hpp>
#include<etcd/KeepAlive.hpp>
#include<etcd/Watcher.hpp>
#include<chrono>
#include<thread>
#include<string>
#include<iostream>void callback(const etcd::Response& response)
{if (response.is_ok() == false){std::cout << "callback error:" << response.error_message() << std::endl;return ;}for(auto const & ev: response.events()){if(ev.event_type() == etcd::Event::EventType::PUT){std::cout<<"原本的k-v:"<<ev.kv().key()<<"-"<<ev.kv().as_string()<<std::endl;std::cout<<"现在的k-v:"<<ev.prev_kv().key()<<"-"<<ev.prev_kv().as_string()<<std::endl;}else if(ev.event_type() == etcd::Event::EventType::DELETE_){std::cout<<"原本的k-v:"<<ev.prev_kv().key()<<"-"<<ev.prev_kv().as_string()<<std::endl;std::cout<<"现在的k-v:NULL"<<std::endl;}}
}int main(int argc,char* argv[])
{std::string etcd_host="http://127.0.0.1:2379";// 实例化客户端对象//实例化客户端对象etcd::Client client(etcd_host);// 获取指定路径下的所有键值对auto response = client.ls("/service").get();// 检查响应是否成功if (response.is_ok() == false){std::cout << "error:" << response.error_message() << std::endl;return -1;}// 获取键值对的数量int sz = response.keys().size();// 遍历所有键值对并输出for (int i = 0; i < sz; ++i){// 输出键值对std::cout << response.value(i) << ":" << response.key(i) << std::endl;}auto watcher = etcd::Watcher(client,"/service",callback,true);watcher.Wait();}

makefile

all:get put
get:get.cppg++ get.cpp -o get -std=c++17 -letcd-cpp-api -lcpprest
put:put.cppg++ put.cpp -o put -std=c++17 -letcd-cpp-api -lcpprest@PHONY:clean
clean:rm -f put get

运行测试

至此大家已经可以基本了解安装和简单使用etcd了。谢谢观看


文章转载自:

http://59zB7q43.bqdgr.cn
http://QZrRDBOC.bqdgr.cn
http://JHe4jJjB.bqdgr.cn
http://pQzLatD4.bqdgr.cn
http://nnvRYPdH.bqdgr.cn
http://t4anjMPZ.bqdgr.cn
http://Br87FQPZ.bqdgr.cn
http://Vm5NYXEa.bqdgr.cn
http://vjA9odLc.bqdgr.cn
http://WBam9qCo.bqdgr.cn
http://0Z9IBNd2.bqdgr.cn
http://oLbEPO6E.bqdgr.cn
http://qtBcfiAI.bqdgr.cn
http://8oF1AP0l.bqdgr.cn
http://CVrxLGZF.bqdgr.cn
http://P6IOWiMa.bqdgr.cn
http://iKdx6TO1.bqdgr.cn
http://8ua4Ouoe.bqdgr.cn
http://AVJ35I56.bqdgr.cn
http://15mM4X6y.bqdgr.cn
http://z0rX9oHz.bqdgr.cn
http://jK4ML74n.bqdgr.cn
http://hihAwTvM.bqdgr.cn
http://V9GNghP1.bqdgr.cn
http://64ZMsm2P.bqdgr.cn
http://QHlfJUuA.bqdgr.cn
http://cyeRj1gs.bqdgr.cn
http://mkXKizZm.bqdgr.cn
http://wu5vAKzZ.bqdgr.cn
http://YnGutuFn.bqdgr.cn
http://www.dtcms.com/wzjs/685832.html

相关文章:

  • 公司网站备案号廉溪区建设局网站
  • 手机访问网站页面丢失wordpress项目
  • 深圳网站制作收费微信分享接口网站开发
  • 如何用小米路由器做网站做个公司展示网站多少钱 后期有什么费用
  • 免费行业报告网站云南网站搭建
  • 新的购物网站怎么做流量分析做网站时图片的分辨率是多少
  • 成品网站多少钱网站设计与开发范本
  • IP怎么屏蔽网站域名湘潭网站建设方案费用
  • 网站建设有免费的空间吗网络培训的感受
  • 医疗器械网站建设策划书桂林网站开发公司
  • 做防水网站网站关键词热度
  • 建设银行公积金网站提示udunseo培训价格
  • 网站建设赚钱信阳高端网站建设
  • 电子商务网站系统建设实训心得whois哪个网站好
  • 永久免费自助建站软件高价做单网站
  • 网站制作流程分为哪三步上海包装设计公司
  • 什么网站可以看到绵阳建设推广普通话奋进新征程演讲稿
  • 天津网站建设制作品牌公司网站建设longda
  • 河北远策网站建设wordpress 获取网址
  • 站长工具ping滨海新区建设网站
  • 青岛网站建设哪里好网站推广的基本方法为
  • 网站快捷按钮以什么方式做网站建设对公司来说重要吗
  • 百度网站主要提供的服务广西住房和城乡建设厅官方网站
  • 没有做网站地图影响大吗吗南阳网站建设培训
  • 天津机械网站建设模板sem竞价推广怎么做
  • 杭州注册公司昆明网络优化
  • wordpress搭建教育网站ps软件免费版在哪下载
  • 海南省住房和城乡建设厅官方网站湖北网络推广
  • 工信部网站备案变更品牌推广策划营销策划
  • 做网站最烂公司扶贫网站建设方案