- 博客(26)
- 资源 (3)
- 收藏
- 关注
原创 SpringCloud OpenFeign 源码分析
为了更加符合企业级微服务定位及未来发展趋势的目标,我们需要对老技术框架的升级,比如老应用SpringBoot 1.x升级2.x,其中老的Neflix Feign也要升级成Spring Cloud OpenFeign,由于各系统框架的高低版本以及服务之间调用等存在一些兼容性问题,我对OpenFeign的源码进行了流程梳理总结,本文区别于传统的文章介绍,而是采用UML时序图+文字描述+代码描述+代码注释的形式,来对OpenFeign的完整生命周期做剖析,希望能对大家做类似框架升级中,遇到feign相关的问题提供
2023-02-27 20:33:54 575 1
原创 浅谈《高性能MySQL》之“创建高性能索引“
《高性能mysql(第3版)》是mysql 领域的经典之作,拥有广泛的影响力。第3 版更新了大量的内容,不但涵盖了最新mysql 5.5版本的新特性,也讲述了关于固态盘、高可扩展性设计和云计算环境下的数据库相关的新内容,原有的基准测试和性能优化部分也做了大量的扩展和补充。全书共分为16 章和6 个附录,内容涵盖mysql 架构和历史,基准测试和性能剖析,数据库软硬件性能优化,复制、备份和恢复,高可用与高可扩展性,以及云端的mysql 和mysql相关工具等方面的内容。每一章都是相对独立的主题,读者可以有选择
2020-10-27 21:10:32 239
原创 Spring Cloud Feign分布式服务调用实例
一、简介本文主要介绍用Feign实现分布式服务调用的实例,因为在实际项目中,都是使用声明式调用服务,而不会在客服端和服务端存储2份相同的model和api定义。Feign在RestTemplate的基础上对其封装,由它来帮助我们定义和实现依赖服务接口的定义。Spring Cloud Feign 基于Netflix Feign 实现的,整理Spring Cloud Ribbon 与 Sprin...
2019-03-28 17:48:31 1138
转载 我所理解的SOA和微服务
SOA和微服务到底是什么关系?说实话,我确实不明白SOA和微服务到底有什么本质上的区别,两者说到底都是对外提供接口的一种架构设计方式。我倒觉得微服务其实就是随着互联网的发展,复杂的平台、业务的出现,导致SOA架构向更细粒度、更通过化程度发展,就成了所谓的微服务了。以这种说法做为根据,我觉得SOA与微服务的区别在于如下几个方面:微服务相比于SOA更加精细,微服务更多的以独立的进程的方式存在,...
2018-12-12 16:01:52 305
转载 mysql left join中where和on条件的区别
left join中关于where和on条件的几个知识点: 1.多表left join是会生成一张临时表,并返回给用户 2.where条件是针对最后生成的这张临时表进行过滤,过滤掉不符合where条件的记录,是真正的不符合就过滤掉。 3.on条件是对left join的右表进行条件过滤,但依然返回左表的所有行,右表中没有的补为NULL 4.on条件中如果有对...
2018-10-29 15:07:39 283
转载 Java ExecutorService线程池
1、new Thread的弊端执行一个异步任务你还只是如下new Thread吗?new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub }}).start();那你就out太多了,new Thread的弊端如...
2018-10-29 14:56:12 254
转载 Zookeeper client
当我写完Zookeeper leader选举后,准备看看Zookeeper的存储和处理客户端请求的时候发现,如果能看看Zookeeper的API是不是在理解后面的过程更好些呢。Zookeeper的client是通过Zookeeper类提供的。前面曾经说过,Zookeeper给使用者提供的是一个类似操作系统的文件结构,只不过这个结构是分布式的。可以理解为一个分布式的文件系统。我们可以通过Zo
2017-07-31 15:58:52 360
转载 Zookeeper leader选举
在上一篇文章中我们大致浏览了zookeeper的启动过程,并且提到在Zookeeper的启动过程中leader选举是非常重要而且最复杂的一个环节。那么什么是leader选举呢?zookeeper为什么需要leader选举呢?zookeeper的leader选举的过程又是什么样子的?本文的目的就是解决这三个问题。首先我们来看看什么是leader选举。其实这个很好理解,leader选举就像总统
2017-07-31 15:57:14 386
原创 des 3des aes ides rsa 对称加密算法
常用对称密码算法比较DES_3DES_AES_IDES_RSA密码算法比较对称加密算法(也叫共享密钥)类型定义:发送接收使用相同的对称密钥密钥长度分组长度循环次数安全性DES数据加密标准,速度较快,适用于加密大量数据的场合; 56
2017-06-29 18:34:55 936
转载 Spring 之AOP AspectJ切入点语法详解(最全面、最详细。)
6.5 AspectJ切入点语法详解6.5.1 Spring AOP支持的AspectJ切入点指示符 切入点指示符用来指示切入点表达式目的,,在spring AOP中目前只有执行方法这一个连接点,Spring AOP支持的AspectJ切入点指示符如下: execution:用于匹配方法执行的连接点; with
2017-06-07 11:47:58 2026 1
转载 zookeeper-启动过程
在上一篇,我们了解了zookeeper最基本的配置,也从中了解一些配置的作用,那么这篇文章中,我们将介绍Zookeeper的启动过程,我们在了解启动过程的时候还要回过头看看上一篇中各个配置参数在启动时的位置。Zookeeper的启动入口在org.apache.zookeeper.server.quorum.QuorumPeerMain。在这个类的main方法里进入了zookeepe
2017-06-05 14:46:44 366
转载 Zookeeper如何配置
前面两篇文章介绍了Zookeeper是什么和可以干什么,那么接下来我们就实际的接触一下Zookeeper这个东西,看看具体如何使用,有个大体的感受,后面再描述某些地方的时候也能在大脑中有具体的印象。本文只关注分布式模式的zookeeper,因为这也是在生产环境的唯一部署方式,单机的zookeeper可以在测试和开发环境使用,但是单机环境的zookeeper就不再是zookeeper了。安装
2017-06-01 18:21:50 727
转载 Zookeeper可以干哪些事情
在Zookeeper的官网上有这么一句话:ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. 这大概描述了Zookeeper主要可以干
2017-06-01 18:06:46 534
转载 为什么用Zookeeper
Google的三篇论文影响了很多很多人,也影响了很多很多系统。这三篇论文一直是分布式领域传阅的经典。根据MapReduce,于是我们有了Hadoop;根据GFS,于是我们有了HDFS;根据BigTable,于是我们有了HBase。而在这三篇论文里都提及Google的一个lock service---Chubby,哦,于是我们有了Zookeeper。随着大数据的火热,Hxx们已经变得耳熟能详
2017-06-01 17:57:51 432
转载 MQ与Webservice的区别
Webservice 和MQ(MessageQueue)都是解决跨平台通信的常用手段,两者有哪些区别呢?个人认为最本质的区别在于 Webservice近乎实时通信,而MQ却通常是延时通信。什么意思呢?因为webservice其实就是本地服务器程序调用远程服务器上的方法,属于两者之间的交互,请求的时候需要等被请求的服务器做出回应后,另一端才会有所动作,也就是说,如果你请求
2017-04-20 14:59:04 9775 2
转载 Quartz中时间表达式详细介绍与样例分析
Quartz中时间表达式的设置-----corn表达式时间格式: , 分别对应: 秒>分>小时>日>月>周>年, 举例:1.每天什么时候执行: 0 59 23 * * ?: 如下为每天23:59:00开始执行 0 1,2,3 11,12 * * ? : 每天11:01,11:02,11:03; 12:01,12:02,12:03分执行任务2.
2017-03-02 10:02:54 2040
转载 关于@Autowired和@Resource注解的区别
spring不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource、@PostConstruct以及@PreDestroy。 @Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按 byName自动注入罢了。@Resource有两个属性是比较重要的,分是nam
2016-12-19 16:17:55 577
原创 最全LogBack 详解、含java案例和配置说明
(一)logback java使用一、 logback介绍Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-cl
2016-09-22 11:20:27 8716 1
转载 字符编码详解
前端开发中的字符编码阅读目录URL编码HTML实体编码与进制编码JS编码前端开发过程中会接触各种各样的编码,比较常见的主要是UTF-8和HTML实体编码,但是web前端的世界却不止这两种编码,而且编码的选择也会造成一定的问题,如前后端开发过程中不同编码的兼容、多字节编码可能会造成的XSS漏洞等。因此,本文旨在更好的全面了解涉及前端开发领域的字符编码,避免可能
2016-09-08 16:14:35 1099
原创 js回调函数
把需要回调的函数当成一个入参传入即可;回调函数实例,如下,简单易懂:/** * 被回调的方法 */ function testCallback(callback) { alert('step 1 !'); callback(); } /** * 被回调的函数 */ function test() {
2016-07-25 15:05:36 380
转载 公钥,私钥和数字签名 图文结合
一、公钥加密 假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。我有一个文件,不能让别人看,我就用1加密了。别人找到了这个文件,但是他不知道2就是解密的私钥啊,所以他解不开,只有我可以用数字2,就是我的私钥,来解密。这样我就可以保护数据了。我的好朋友x用我的公钥1加密了字符a,加密后成了b,放在网上
2016-05-03 11:49:26 496
转载 java、memcached的配置及使用。
Memcach什么是MemcacheMemcache集群环境下缓存解决方案Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。 Memcache是danga的一个项目,最早
2016-03-29 18:53:55 622
转载 memcached 介绍
一、 概念Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。二、 适用场合1. 分布式应用。由于memcached本身基于分布式的系统,所以尤其适合大型的分布式系统。2. 数据库前段缓存。数据库常常是网站系统的瓶颈。数据库的大并发量访问,常常造成网站内存溢出。当然
2016-03-29 18:37:05 402
原创 Linux Red Hat 5.6下安装Oracle 11gR2(最新版原创)
系统环境:linux操作系统:RHEL5.6_x64 数据库版本:oracle 11gR2 内存:16G (oracle11g最低要求1G) SWAP:8G(oracle11g最低要求1668480 KB)工具:Xmanager4.0(支持图形化操作)一、 安装linux red hat5.6;二、 安装oracle11g;
2015-09-24 11:51:01 4058
proguard5.1
2015-01-09
DWR+Jquery+Servlet+Jdbc+Ztree类似新浪微博聊天工具
2014-05-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人