摘要: 前言 最近接触到了跳跃表,感觉很牛x,这不又把《数据结构与算法分析》翻开了,也查了一些资料,这里总结一下自己的理解。 概念及特点 跳跃表是一种分层结构的有序链表,其查找和插入的平均时间复杂都是O(logN)。相比数组插入的时间复杂度O(N)和平衡二叉树 插入过程中为满足平衡而实施复杂旋转操作,跳跃表 阅读全文
posted @ 2021-04-26 14:14 whao2world 阅读(867) 评论(3) 推荐(0) 编辑
摘要: 前言 前一篇文章介绍了IceGrid的简单应用。这篇文章来介绍一下它的高端玩法—如何将模板,复制组,知名对象应用于部署方案及其作用。 基于模板的部署方案 之前介绍了xml格式的配置文件通过各种描述符如node,server,adaptor等,描述应用部署信息。当服务部署复杂度增加时,书写这些描述符是 阅读全文
posted @ 2021-01-24 22:47 whao2world 阅读(1128) 评论(0) 推荐(1) 编辑
摘要: 前言 IceGrid是一个提供服务定位和服务激活的组件,但它的功能远不止于此。从它的命名可以看出它的设计理念—网格计算(grid computing)。网格计算被定义为由一系列关联的廉价计算机组成的计算网络。将写好的应用运行于网格计算中的主机上,只是应用整个生命周期中一部分工作。虽然Ice为应用的各 阅读全文
posted @ 2021-01-21 17:22 whao2world 阅读(1309) 评论(0) 推荐(0) 编辑
摘要: 前言 相信大家在没有接触过框架之前,都自己或多或少的开发过一些应用服务。每个应用服务除了业务配置还有很多环境配置,资源配置等,这些跟部署相关的配置。服务跟配置文件是一种静态绑定的方式,更新配置还需要重启服务;即使要支持热加载配置,还需要自己实现一套机制。这种静态的方式缺乏灵活性,而且在微服务盛行的今 阅读全文
posted @ 2021-01-18 16:20 whao2world 阅读(1061) 评论(0) 推荐(1) 编辑
摘要: 概述 Ice是一个开源的综合性RPC框架,以高性能和原生支持微服务的架构而著称。提供了很多可以直接使用的组件,如注册中心IceGrid,部署工具IcePatch2,防火墙穿透Glacier2,发布订阅服务IceStorm等。这样的好处就是降低了学习成本和基于中间件的二次开发工作量。同时弊端也很明显就 阅读全文
posted @ 2021-01-13 17:59 whao2world 阅读(4034) 评论(0) 推荐(1) 编辑
摘要: 问题回顾 最近生产环境数据库查询接口异常,抛出异常信息表明预处理sql语句声明已经超过mysql系统设置限制max_prepared_stmt_count;通过网上一些资料,分析大概是程序中数据库查询代码prepared sql statement没有关闭或者释放导致。 Can't create m 阅读全文
posted @ 2020-04-21 15:57 whao2world 阅读(898) 评论(0) 推荐(0) 编辑
摘要: 引入 与Mysql数据库一样,MongoDB也有自己的查询优化工具,explain和慢日志 explain shell命令格式 db.collection.explain().<method(...)> 支持的method方法有: aggregate() count() find() remove( 阅读全文
posted @ 2020-04-20 19:21 whao2world 阅读(694) 评论(0) 推荐(0) 编辑
摘要: 前言 副本集部署是对数据的冗余和增加读请求的处理能力,却不能提高写请求的处理能力;关键问题是随着数据增加,单机硬件配置会成为性能的瓶颈。而分片集群可以很好的解决这一问题,通过水平扩展来提升性能。分片部署依赖三个组件:mongos(路由),config(配置服务),shard(分片) shard:每个 阅读全文
posted @ 2020-04-20 17:26 whao2world 阅读(1415) 评论(0) 推荐(0) 编辑