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

深圳优化公司统高粱seoseo按照搜索引擎的

深圳优化公司统高粱seo,seo按照搜索引擎的,做班级网站的详细计划书,给 小企业 建设网站背景 需要监听K8s中CRD资源的变动, 做出相应的处理, 需要针对 CRD资源建立informer 实现 dynamicClient 是 创建的K8s的client, 这里使用的是 Unstructured 接収的CRD的结果, 加工的时候使用了convertUnstructuredProject 加工了一下, convertUnstructuredProject 实现下面提…

背景

需要监听K8s中CRD资源的变动, 做出相应的处理, 需要针对 CRD资源建立informer

实现

dynamicClient 是 创建的K8s的client, 这里使用的是 Unstructured 接収的CRD的结果,
加工的时候使用了convertUnstructuredProject 加工了一下, convertUnstructuredProject 实现下面提供
projectGvk 是 GroupVersionResource , 根据自己的CRD定义

		// 创建sharedInformerFactory,第二个参数为同步周期,也就是多久从APIServer List一次,并更新到本地缓存informer := cache.NewSharedInformer(&cache.ListWatch{ListFunc: func(options v1.ListOptions) (runtime.Object, error) {return dynamicClient.Resource(projectGvk).List(ctx, options)},WatchFunc: func(options v1.ListOptions) (watch.Interface, error) {return dynamicClient.Resource(projectGvk).Watch(ctx, options)},},&unstructured.Unstructured{},60*time.Second)// 创建informerif err != nil {log.Error("Failed to create informer", zap.Error(err))continue}// 注册资源事件处理方法informer.AddEventHandler(cache.ResourceEventHandlerFuncs{AddFunc: func(obj interface{}) {},UpdateFunc: func(oldObj, newObj interface{}) {newData, err := convertUnstructuredProject(newObj)if err != nil {log.Error("Failed to convert unstructured project", zap.Error(err))}oldData, err := convertUnstructuredProject(oldObj)if err != nil {log.Error("Failed to convert unstructured project", zap.Error(err))}if oldData.Generation != newData.Generation {fmt.Println("update", newData)saveProject(newData, clsuter.Platform)}},DeleteFunc: func(obj interface{}) {data, err := convertUnstructuredProject(obj)if err != nil {log.Error("Failed to convert unstructured project", zap.Error(err))}fmt.Println("delete", data)deleteProject(data, clsuter.Platform)},})// 启动stopCh := make(chan struct{})log.Info("Starting project informer factory")informer.Run(stopCh)// 等待父协程处理<-ctx.Done()close(stopCh)log.Info("Shutting down project informer factory")

convertUnstructuredProject的实现 Project 是实现的 runtime.Object 接口的struct

func convertUnstructuredProject(obj interface{}) (crd *Project, err error) {// 将obj转换为*unstructured.Unstructured类型u, ok := obj.(*unstructured.Unstructured)if !ok {fmt.Println("Failed to convert object to *unstructured.Unstructured")return}// 将u对象转换为YourCRDType类型crd = &Project{}err = runtime.DefaultUnstructuredConverter.FromUnstructured(u.UnstructuredContent(), crd)if err != nil {fmt.Println("Failed to convert object to YourCRDType")return}return
}
http://www.15wanjia.com/news/56753.html

相关文章:

  • WordPress vidroproseo属于技术还是营销
  • 福州做网站的哪家好经典软文广告案例
  • 企业网站建设 urkeji网络推广员工作好做吗
  • 珠海网站建设制作设计郑州百度推广哪家好
  • 行业网站模版线上运营推广
  • 国内免费二级域名网站漯河网络推广哪家好
  • 郑州做网站的大公司网络营销的特点有几个
  • 安阳网站建设网站优化推广公司排名
  • 渠道网络股份有限公司网站关键词优化推广
  • 用vuejs做的网站江苏网站推广
  • 手机网站制作教程视频wordpress外贸独立站
  • 做购物商城网站建设网络营销的未来发展趋势
  • 网站搜索不到公司网站百度教育网站
  • 化妆品可做的团购网站有哪些百度官网网址
  • 淘宝网站建设基本流程图seo网站排名查询
  • q王商城 网站是怎么做的外贸网站建设 google
  • 深圳有没有做网站的seo搜索引擎优化总结报告
  • 龙溪网站建设哪家便宜深圳优化公司排名
  • 做攻略的网站好百度关键词排名神器
  • 网站首页关键词如何优化微信如何投放广告
  • wordpress 随机语句seo自学网官网
  • 做ppt必备网站整站seo免费咨询
  • 福州婚庆网站建设哪个公司比较专业足球进球排行榜
  • 大同网站设计百度知道app
  • 外地公司做的网站能备案整站优化多少钱
  • 台州外贸网站快速建站
  • 如何用flash做网站域名查询平台
  • 长春网站建设方案外包友情链接联盟
  • 咸宁做网站哪家好优化方案官方网站
  • 网站建设前的市场分析seo系统教程