博客搬家
好久沒更新博客了
设计模式
设计模式持续学习中~
文章、教程记录
记录一些比较不错的文章
java新特性
学习java8以及之后的新特新,个人认为java8迟早会被淘汰,唯有继续学习啦~
给函数取一个好的名字
最近看到比较有趣的文章,记录一下重点内容
SpringCloud
微服务概述整个微服务架构是由大量的技术框架和方案构成,比如:
服务基础开发
Spring MVC、Spring、SpringBoot
服务注册与发现
Netflix的Eureka、Apache的ZooKeeper等
服务调用
RPC调用有阿里巴巴的Dubbo,Rest方式调用有当当网Dubbo基础上扩展的Dubbox、还有其他方式实现的Rest,比如Ribbon、Feign
分布式配置管理
百度的Disconf、360的QConf、淘宝的Diamond、Netflix的Archaius等
负载均衡
Ribbon
服务熔断
Hystrix
API网关
Zuul
批量任务
当当网的Elastic-Job、Linkedln的Azkaban
服务跟踪
京东的Hydra、Twitter的Zipkin等
Spring Cloud的出现,可以说是为微服务架构迎来一缕曙光,有SpringCloud社区的巨大支持和技术保障,让我们实施微服务架构变得异常简单了起来,它不像我们之前所列举的框架那样,只是解决微服务中的某一个问题,而是一个解决微服务架构实施的综合性解 ...
MyCat
介绍Mycat的前身是阿里巴巴大名鼎鼎的Cobar,Cobar在开源了一段时间后,就没有再维护了,阿里巴巴放弃了该项目,再加上Cobar在使用过程中也发现存在一些问题。
2013年国内一批开源软件爱好者对Cobar这个项目进行了改进,并命名为Mycat,这就是MyCat的诞生。
MyCat是完全免费开源的,不属于任何商业公司。
权威指南:https://www.yuque.com/books/share/0576de75-ffc4-4c34-8586-952ae4636944
Mycat是一个开源数据库中间件,是一个实现了MySQL协议的的数据库中间件服务器,我们可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问Mycat,而Mycat再使用MySQL原生(Native)协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,包括SQL Server、Oracle、DB2、PostgreSQL等主流数据库,也支持MongoDB这种新型NoSQL方式的存储,未来还会支持更多类型的存储;
一般地,Mycat主要用于代理MySQL数据库,虽然它也支持去 ...
Shiro
简述程序的访问安全性一直是开发的重要环节,JavaEE开源世界中有两大常用的安全框架:Apache Shiro 和 Spring Security。前者结构简单容易上手,后者结构复杂功能强大,多年来各有大量的支持者。 Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。而且Shiro的API也是非常简单。
四大核心功能验证(Authentication)、授权(Authorization)、会话管理(Session Management)和加密管理(Cryptography)。
Authentication:身份认证/登录,验证用户是不是拥有相应的身份;
Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;
Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话 ...
SQL进阶
mysql目录结构为了保存表结构, InnoDB 和 MyISAM 在 数据目录 下对应的数据库子目录下创建了一个专门用于 描述表结构的文件 ,文件名是这样:
InnoDB 5.7 .opt 数据库结构 .frm 表结构 .ibd 表数据存储默认存储地(独立表空间) ibdata1 表数据存储存储地之一(系统表空间)
InnoDB 8.0 .ibd 表结构与表数据合一了,都存在这文件中 没有.opt了
MyISAM 5.7 .frm 表结构 .MYD 表数据 .MYI 存的是索引
MyISAM 8.0 .sdi 表结构(.frm更名成的)
索引对于单列索引,尽量选择针对当前query过滤性更好的索引在选择组合索引的时候,当前query中过滤性最好的字段在索引字段顺序中,位置越靠前越好。在选择组合索引的时候,尽量选择能够包含当前query中的where子句中更多字段的索引。在选择组合索引的时候,如果某个字段可能出现范围查询时,尽量把这个字段放在索引次序的最后面。
失去索引的口诀:模:模糊查询LIKE以%开头型:数据类 ...
RabbitMQ
消息队列之一