- 博客(17)
- 资源 (27)
- 收藏
- 关注
原创 netty | Channel.write()和ChannelHandlerContext.write()的区别
ChannelPipeline处理ChannelHandler的顺序:pipeline中的handler 处理的请求分为两类: 读 和 写对于读请求 : 从handler链表的 head 到 tail 挨个的处理, 跳过 ChannelOutboundHandler对于写请求 : 从handler链表的 tail 到 head 挨个的处理, 跳过 ChannelInboundHandler1 调用 Channel.write(), 会直接调用ChannelPipeline.write() @
2021-02-27 10:49:04 624
原创 微服务应该多大
转自:https://zhuanlan.zhihu.com/p/143709876?utm_source=wechat_session该文章和作者很厉害.微服务实践最常见的错误之一是把微服务做得过小。本文通过示例,深入讨论了微服务的大小和粒度。微服务架构终于成为一种架构模式。与任何新技术一样,微服务的发展符合 Gartner 的技术曲线。从推特上获得的信息来看,它处于低谷期或复苏的早期阶段。换句话说,过去6年,我们在构建微服务方面积累了一些重要经验,其一就是确保以恰当的方式考虑每个微服务的范.
2021-02-26 21:39:52 715
原创 架构演化
随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。垂直应用架构当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,提升效率的方法之一是将应用拆成互不相干的几个应用,以提升效率。此时,用于加速前端页面开发的Web框架(MVC)是关键。分布式服务架
2021-02-26 21:32:13 73
原创 dubbo简单demo
Dubbo角色结构Provider: 服务提供者Consumer: 服务消费者Registry: 注册中心Monitor: 监控中心Container: 容器其实看起来很像消息队列的发布-订阅模式,有提供者和消费者.大概流程就是提供者在注册中心发布,消费者去注册中心发现服务并订阅服务1.无注册中心模式无注册中心,其实相当于消费者直接使用httpclient去请求提供者.1.1Provider1.1.1接口和服务public interface ProService { Stri
2021-02-26 21:29:03 248
原创 zookeeper可以用来干什么
这篇文章是转载.有些我不太理解.需要去实践.后续补充.在Zookeeper的官网上有这么一句话:ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.这大概描述了Zookeeper主要可以干哪些事情:配置管理,名字服务,提供分布式同步以及集群管理。那这些
2021-02-25 09:59:54 216
原创 zookeeper数据结构及java客户端
zookeeper的存储结构zookeeper中的数据是按照“树”结构进行存储的。而且znode节点还分为4中不同的类型。如下:PERSISTENT-持久化节点:创建这个节点的客户端在与zookeeper服务的连接断开后,这个节点也不会被删除(除非您使用API强制删除)。PERSISTENT_SEQUENTIAL-持久化顺序编号节点:当客户端请求创建这个节点A后,zookeeper会根据parent-znode的zxid状态,为这个A节点编写一个全目录唯一的编号(这个编号只会一直增长)。当客户端与
2021-02-25 09:53:30 92
原创 zookeeper集群模式
集群模式1.准备工作准备三个虚拟机,注意关闭防火墙192.168.0.11192.168.0.12192.168.0.13每个虚拟机都安装好zookeeper之后,接下来要先创建几个文件夹.创建zookeeper工作目录:mkdir -p /usr/zookeeperdata/mkdir -p /usr/zookeeperdata/data创建zookeeper日志目录:mkdir -p /usr/zookeeperdata/log2.修改配置文件修改zoo.cfx# The
2021-02-24 14:25:22 158
原创 zookeeper单机模式
单机模式:1.安装javazookeeper需要java,所以先下载java.如果不是要求特别严格,可以下载openjdk先查询安装包,然后安装java-1.8.0-openjdk.x86_64:[root@localhost conf]# yum search jdkLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.bfsu.edu.cn * extras: mir
2021-02-24 13:54:28 475
原创 kafka快速开始
步骤1:取得KAFKA下载 最新的Kafka版本并解压缩:$ tar -xzf kafka_2.13-2.7.0.tgz$ cd kafka_2.13-2.7.0步骤2:启动KAFKA环境注意:您的本地环境必须安装了Java 8+。运行以下命令以正确的顺序启动所有服务:#启动zookeeper$ bin/zookeeper-server-start.sh config/zookeeper.properties打开另一个终端会话并运行:#启动Kafkaservice$ bin/kaf
2021-02-20 18:34:22 182
原创 过滤器模式
本例中:target 是真正执行的操作.相当于controllerfilter是前置的过滤器targetpublic class Target { public void excute() { System.out.println("真正执行处理。。。。"); }}Filter 接口public interface Filter { public void excute();}两个实例public class LogFilter implements Filter{ @
2021-02-20 17:11:55 99
原创 阿里的优雅实现策略模式
加密接口/** * 加密 * @author Administrator * */public interface IEntry { public String entry(String body);}md5的子类import org.springframework.stereotype.Component;@Component("md5")public class EntryMd5 implements IEntry{ @Override public String
2021-02-20 15:00:33 203
原创 我对devops的理解
devops的解释我看着很糊涂,各种解释都有.只说下自己对devops的理解吧。从字面意思是开发运维一体化。为什么要一体化?因为开发和运维是有着鸿沟的。开发会按照产品开发各种新功能,追求的是应用。运维追求的是稳定。如果在原有的工作环境瀑布式开发的情况下,这种冲突还不是很明显。但是在迭代式开发情况下,产品需要大量新功能喷出,需要积极试错。所以会造成经常发布版本,这种冲突对立就很明显了。所以要怎么办呢?就得开发和运维抱团。具体怎么抱团?洗脑吗?我也不甚了了了。...
2021-02-20 14:20:19 153
原创 windows查看进程所在位置
比如一台电脑运行一个aaa.jar但是端口也可以查看到。但是这个aaa.jar的路径在哪里?我们需要去查询windows的句柄就可以搜到
2021-02-04 16:34:16 476
原创 apijson简单demo
项目gitee在 https://gitee.com/Tencent/APIJSON按照apijson-java的例子,clone了apijson-demo项目,导入了sql修改项目的一些基本配置然后运行起项目.此时,跑着apijson-demo项目,端口8080,数据库大概如下:然后就可以直接用postman访问数据库了.这个就相当于查询moment表id=12的数据总的来说,apijson适应于中小应用,可以做到忽略后端.它相当于有着自己的格式,可以构造各式各样的查询条件及其他操
2021-02-02 15:11:17 4118 2
原创 springboot配置日志
简单式logging: level: root: info配置文件式yml:logging: config: classpath:logback.xmllogback.xml<configuration> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.log
2021-02-02 10:48:03 271
原创 mycateye
gitee和github项目可以搜索:mycateye项目已经老了。好两年没有更新,但是使用起来还不错。项目拉下来、会有两个项目mycateye-web和mycateye-agent。其中mycateye-agent是采集数据的,mycateye-web是后台查看的。在build下有个mycat_eye.sql,这个导入到数据库里面去。同时把数据库信息放到两个项目的配置文件里去。然后启动agent项目,再启动web项目,访问localhost7001就可以了...
2021-02-01 17:51:17 260
小程序weui.rar
2020-03-07
JAVA权限设计及代码及页面
2018-06-29
wx-tools的jar及其依赖包
2018-06-04
maven分模块的web工程
2018-04-20
secureCRT的注册机
2018-03-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人