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

网站建设 拖欠尾款如何用VS2017做网站

网站建设 拖欠尾款,如何用VS2017做网站,张家港做网站的公司,人力管理系统前面两篇文章介绍了elasticsearch以及Kibana的安装#xff0c;检索引擎以及可视化工具都已经安装完成#xff0c;接下来介绍下如何使用golang的sdk实现简单的分页查询。 1、下载Elastic官方golang sdk 在讲解elasticsearch检索之前#xff0c;需要先把golang的环境安装好检索引擎以及可视化工具都已经安装完成接下来介绍下如何使用golang的sdk实现简单的分页查询。 1、下载Elastic官方golang sdk 在讲解elasticsearch检索之前需要先把golang的环境安装好go的安装可以参考官方文档mac、linux下的安装都非常简单参考以下文档 go下载地址https://go.dev/dl/ 安装说明https://go.dev/doc/install 安装完成后把goproxy改成国内代理执行以下命令 go env -w GOPROXYhttps://goproxy.cn,direct 下载elasticsearch官方golang包 go get github.com/elastic/go-elasticsearch/v8 或者直接在代码里引入该包之后通过命令 go mod tidy 来下载各种依赖包。 2、测试数据说明 es中一共写入了11000条数据doc_id字段标识了数据的索引有助于说明本文分享的使用fromsize参数的检索。 3、使用fromsize实现分页检索 首先定义检索结果的基础数据结构 // 最外层数据结构 type Documents struct {Shards Shards json:_shardsHits HitOutLayer json:hitsTimedOut bool json:timed_outTook int json:took } type Shards struct {Failed int json:failedSkipped int json:skippedSuccessful int json:successfulTotal int json:total } type HitOutLayer struct {Hits []Hits json:hitsMaxScore float64 json:max_scoreTotal Total json:total } type Hits struct {ID string json:_idIndex string json:_indexScore float64 json:_scoreSource map[string]any json:_sourceType string json:_type } type Total struct {Relation string json:relationValue int json:value } 连接eses8默认是通过https进行连接因此在连接时需要设置证书证书的位置在es路径下的config文件夹中 连接es的代码如下 cert, _ : os.ReadFile(/Users/liupeng/Documents/study/elasticsearch-8.17.0/config/certs/http_ca.crt) client, err : elasticsearch.NewClient(elasticsearch.Config{Username: elastic,Password: XBSadqa799j_AozAh,Addresses: []string{https://127.0.0.1:9200},CACert: cert, }) 构建检索dsl跳过前面1000个文档检索10条文档 dslQuery : esbuilder.NewDsl() boolQuery : esbuilder.NewBoolQuery() boolQuery.Filter(esbuilder.NewRangeQuery(doc_id).Gte(1)) dslQuery.SetQuery(boolQuery) dslQuery.SetFrom(1000) dslQuery.SetSize(3) dslQuery.SetOrder(esbuilder.NewSortQuery(doc_id, asc)) dsl : dslQuery.BuildJson() 构建dsl我使用了自研的构建dsl的库 github.com/liupengh3c/esbuilder 主打一个方便就不用开发者自行去拼凑dsl了开发成本降低了许多。 执行检索过程并把检索到的内容进行打印 search : esapi.SearchRequest{Index: []string{new_tag_202411},Body: strings.NewReader(dsl), } resp, err : search.Do(context.Background(), client) if err ! nil {fmt.Println(search err:, err.Error())return } json.NewDecoder(resp.Body).Decode(docs) strDoc, _ : json.MarshalToString(docs) fmt.Println(strDoc) 理论上应该打印doc_id从1001开始到1003的3条数据打印出来的数据如下 {_shards: {failed: 0,skipped: 0,successful: 1,total: 1},hits: {hits: [{_id: JME17xx_adc_behavior_NOJUNCTION_STRAIGHT_1_1732982184160_1732982184860_1733030180041,_index: new_tag_202411,_score: 0,_source: {adc_behavior: NOJUNCTION_STRAIGHT,car_id: JME17xx,create_time: 2024-12-23 21:34:51,doc_id: 1001,end_time: 1732982184860,rule_id: 1,rule_priority: 1,rule_version: 2.1.0.0,start_time: 1732982184160,tag_additional_info: {adc_driving_mode: COMPLETE_MANUAL,average_speed: 0.003893,driving_mode: 0,end_point: {x: 222294.311402,y: 3373118.699096,z: 14.721843},start_point: {x: 222294.312234,y: 3373118.698359,z: 14.721373}},tag_name: adc_behavior,user: liupeng},_type: },{_id: JME18xx_adc_behavior_NOJUNCTION_STRAIGHT_1_1732982184140_1732982218540_1733030184257,_index: new_tag_202411,_score: 0,_source: {adc_behavior: NOJUNCTION_STRAIGHT,car_id: JME18xx,create_time: 2024-12-23 21:34:51,doc_id: 1002,end_time: 1732982218540,rule_id: 1,rule_priority: 1,rule_version: 2.1.0.0,start_time: 1732982184140,tag_additional_info: {adc_driving_mode: COMPLETE_AUTO_DRIVE,average_speed: 3.86589,driving_mode: 1,end_point: {x: 219886.247841,y: 3374513.249021,z: 8.882025},start_point: {x: 219576.290596,y: 3374298.199175,z: 9.130117}},tag_name: adc_behavior,user: liupeng},_type: },{_id: ARCFxx_adc_behavior_U_TURN_1_1732982184047_1732982227367_1733030187627,_index: new_tag_202411,_score: 0,_source: {adc_behavior: U_TURN,car_id: ARCFxx,create_time: 2024-12-23 21:34:52,doc_id: 1003,end_time: 1732982227367,rule_id: 1,rule_priority: 1,rule_version: 2.1.0.0,start_time: 1732982184047,tag_additional_info: {adc_driving_mode: COMPLETE_AUTO_DRIVE,average_speed: 10.146669,driving_mode: 1,end_point: {x: 228474.086367,y: 3392800.40123,z: 8.736978},start_point: {x: 228502.4916,y: 3392823.01595,z: 8.714573}},tag_name: adc_behavior,user: liupeng},_type: }],max_score: 0,total: {relation: gte,value: 10000}},timed_out: false,took: 2 } 结果的返回是符合预期的perfect。 4、一个很重要的知识点 formsize的这种分页方式是有前提的就是只能检索10000条以内的数据如果超过10000那就不灵了超过10000后一条数据都不会返回比如我们将设置from、size的代码改成如下 dslQuery : esbuilder.NewDsl() boolQuery : esbuilder.NewBoolQuery() boolQuery.Filter(esbuilder.NewRangeQuery(doc_id).Gte(1)) dslQuery.SetQuery(boolQuery) dslQuery.SetFrom(9998) dslQuery.SetSize(3) dslQuery.SetOrder(esbuilder.NewSortQuery(doc_id, asc)) dsl : dslQuery.BuildJson() 跳过前面9998条检索3条数据出来很明显这样的检索条件是超过了10000条的执行代码后检索没有结果 所以这种检索分页方式存在局限性在10000条数据之内可以这么使用但是一旦超过10000就会有问题当然我们也不用担心elastic是有解决方案的我会再单独写文章来介绍。 5、one more thing 我在自己的macbook上【在家里】安装了es注意关键信息是【在家里】安装的上班的时候把自己电脑带到了公司上班摸鱼的时候我打开了自己电脑连接wifi启动es、kibana准备把公司mac上es的数据copy到自己mac上问题来了自己mac上kibnan启动不了了启动不了了......我很纳闷啥情况为啥启动不了了难道是我替换了es文件夹下data的缘故吗重新恢复为自己的data问题依旧。 下班心想还得把公司电脑上es的数据拷贝一份到自己mac上以用来测试就把公司mac带回家连接家里的wifi我满怀期待的打开电脑准备倒数据结果公司电脑的kibana也启动不了启动不了了我的天哪这是见鬼了吗啥情况呢自己电脑上的kibana能启动了这是在外面认生吗得回到自己家才能启动这是问题1这个时候我心想公司电脑上kibana启动不了就算了我直接用自己mac跑代码读取公司mac上es的数据然后写入到本地的es上问题又来了竟然连接不上提示证书授权的ip没有当前ip这完蛋了这是问题2。 于是我就停下来大概想了一下问题的始末大概明白了es8的安全证书对网络加了校验既然我通过自己mac连接不上公司mac现在所处的网络是家里那就说明自己mac的证书是有效的于是就调换一下从公司mac上跑代码读取本机写入到自己mac上结果还真成了。 但是kibana更换网络无法启动的问题还未解决这个问题不解决也就是说只要不是在家里kibana就打不开es不能做的这么傻吧于是今天到公司后请教了elastic中国社区首席布道师刘晓国老师刘老师非常热情的直接电话过来解释了kibana无法打开的原因以及解决办法在这里对刘老师的帮助表达诚挚感谢非常感谢刘老师。推荐大家看看刘老师的博客Elastic开发者上手指南-CSDN博客 接下来我们说kibana无法打开的原因还是证书问题kibana在启动时对本机的ip做了校验更换网络后ip发生变更因此kibana无法启动kibana的配置文件中有这么一行代码 我们只要这行代码更改为以下即可 elasticsearch.hosts: [https://localhost:9200] es8的证书除了对本机的实际ip做了校验也对localhost做了验证因此只要改成localhost问题就会解决即使更换网络localhost是不会改变的。 另外再更换网络的情况下如果要通过未更换网络的机器连接更换网络的机器只有一个办法那就是在当前网络下更新证书除此别无他法。 6、所有代码 package mainimport (contextfmtosstringstimegithub.com/elastic/go-elasticsearch/v7/esapigithub.com/elastic/go-elasticsearch/v8jsoniter github.com/json-iterator/gogithub.com/liupengh3c/esbuilder )// 最外层数据结构 type Documents struct {Shards Shards json:_shardsHits HitOutLayer json:hitsTimedOut bool json:timed_outTook int json:took } type Shards struct {Failed int json:failedSkipped int json:skippedSuccessful int json:successfulTotal int json:total } type HitOutLayer struct {Hits []Hits json:hitsMaxScore float64 json:max_scoreTotal Total json:total } type Hits struct {ID string json:_idIndex string json:_indexScore float64 json:_scoreSource map[string]any json:_sourceType string json:_type } type Total struct {Relation string json:relationValue int json:value }func main() {SearchFromSize() }func SearchFromSize() {st : time.Now()defer func() {fmt.Println(cost:, time.Since(st).Milliseconds(), ms)}()var json jsoniter.ConfigCompatibleWithStandardLibrarydocs : Documents{}cert, _ : os.ReadFile(/Users/liupeng/Documents/study/elasticsearch-8.17.0/config/certs/http_ca.crt)client, err : elasticsearch.NewClient(elasticsearch.Config{Username: elastic,Password: xpE4DQGWE9bCkoj7WXYE,Addresses: []string{https://127.0.0.1:9200},CACert: cert,})if err ! nil {fmt.Println(create client err:, err.Error())return}dslQuery : esbuilder.NewDsl()boolQuery : esbuilder.NewBoolQuery()boolQuery.Filter(esbuilder.NewRangeQuery(doc_id).Gte(1))dslQuery.SetQuery(boolQuery)dslQuery.SetFrom(9998)dslQuery.SetSize(3)dslQuery.SetOrder(esbuilder.NewSortQuery(doc_id, asc))dsl : dslQuery.BuildJson()search : esapi.SearchRequest{Index: []string{new_tag_202411},Body: strings.NewReader(dsl),}resp, err : search.Do(context.Background(), client)if err ! nil {fmt.Println(search err:, err.Error())return}json.NewDecoder(resp.Body).Decode(docs)strDoc, _ : json.MarshalToString(docs)fmt.Println(strDoc) } 最后祝各位同学圣诞节快乐~~~~~~~~~~~~~
http://www.w-s-a.com/news/759624/

相关文章:

  • 购物网站线下推广方案佛山快速建站哪家服务专业
  • 临沂网站排名外贸网站推广方法之一
  • 手机网站百度关键词排名查询吕梁网站制作吕梁安全
  • 做网站媒体wordpress管理员账号数据库添加
  • php如何自己做网站wordpress怎么修改编辑代码
  • 网站建网站建设公司WordPress互联
  • 泊头市网站建设价格wordpress导航菜单位置
  • 怎么设立网站赚广告费网页制作素材模板图片
  • 做班级网站的目的网站设计制作公司需要什么资质
  • 济南做网站哪家好财政网站平台建设不足
  • php网站建设招聘网站开发与设计论文
  • 上海 网站建设平台 补贴网站开发招标文件范本
  • 延安网站建设公司电话手机上那个网站做农产品推广比较好
  • 增城哪家网站建设好如何做网站实名认证
  • 常州地区做网站个人购物网站需要备案吗
  • 网站建设公司 跨界鱼科技专业做服务器的网站都有哪些
  • 欧洲网站服务器网站建设费用计入什么科目
  • 网站的色调苏州策划网站模板建站公司
  • 怎么看网站用的什么后台公路建设项目可行性研究报告编制办法哪个网站查最新版
  • 可以看的网站的浏览器有哪些专业APP客户端做网站
  • 如何做网站推广自己的产品推荐个网站好吗
  • 网站经营范围wordpress注入点
  • 学校网站开发协议夫妻网络网站建设
  • 福州网站seo推广优化微信商家小程序怎么弄
  • 免费网站推广工具在游戏网站做中介合法
  • 网站建设前的规划网站建设公司六安
  • 公司注册网站开发的行业表述南宁在百度上建网站
  • 创建企业网站国内网站用django做的
  • 云主机网站的空间在哪制作微网站的平台
  • 长沙做网站 青创互联wordpress4.4.1