自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (1)
  • 收藏
  • 关注

原创 Centos7.2 安装docker

yum install -y docker【设置yum代理】vi /etc/yum.conf #添加如下,需要修改账号等proxy=http://username:password@ip:port【修改yum源】cd /etc/yum.repos.d/wget http://mirrors.163.com/.help/CentOS7-Base-163.repo【设置wget代理...

2019-02-26 09:21:05 201

原创 docker基本命令02 镜像&Dockerfile指令

查看镜像下载的位置docker info镜像列表docker imagesa表示all,默认falsef表示filterno-trunc,默认falseq表示quiet,默认false查看镜像docker inspectf表示为format删除镜像docker rmif表示force,默认false–no-rpune,默认false删除所有镜像dock...

2019-02-25 20:08:56 158

原创 docker基本命令01 容器

win7安装docker环境https://docs.docker.com/toolbox/toolbox_install_windows/docker基本命令运行helloworddocker run ubuntu echo ‘helloword’容器启动交互式容器(与ssh远程连接一样)docker run -i -t ubuntu /bin/bashi表示–in...

2019-02-24 19:14:57 381

原创 深入浅出spring boot 2.x 09-部署、测试、监控【笔记】

maven打包run后再Golas中填入complie,runtarget下就可以找到打包文件运行springboot项目java -jar ww.war --server.port=9080热部署devtools <dependency> <groupId>org.springframework.boot</groupId> &...

2019-02-23 11:03:17 293

原创 深入浅出spring boot 2.x 08-spring5新框架 webFlux【笔记】

spring5新框架 webFlux响应式的Web框架,springboot2才开始支持需要了解RxJava和Reactor,Reactor是webFlux默认的实现方式首先了解响应式编程响应式编程是一种面向数据流和变化传播的编程范式响应式宣言:快速响应:尽可能块的响应可恢复:强大的容错和修复机制可伸缩:根据自身压力变化,释放或扩展服务器的能力响应式编程的三层rout...

2019-02-21 16:17:33 361

原创 深入浅出spring boot 2.x 07-spring异步线程池&消息&定时任务&websocket【笔记】

#####spring异步线程池如报表,因为业务量大,比较耗时实现AsyncConfigurer接口,使用@EnableAsync开启异步可用在使用时,添加注解@Async即可异步消息JMS点对点模式发布订阅模式,为了更好的扩展,更多系统使用监控得到消息,此项用的多。ActiveMQspringboot配置spring.JMS.spring.activemq.发送消...

2019-02-21 16:05:43 684

原创 深入浅出spring boot 2.x 06-spring security【笔记】

spring security与servlet过滤器filter拦截通过自己的验证决定是否放行。同样security也是此原理,使用DispatcherServlet对spring MVC进行拦截。为对请求进行拦截,springMVC提供过滤器DelegatingFilterProxy类给予开发者配置springboot使用@EnableWebSecurity配置账户密码spring.se...

2019-02-21 16:00:20 318

原创 深入浅出spring boot 2.x 05-REST风格【笔记】

REST风格,无动词springMVC4.3以后注解引入,如@GetMapping,更加想REST风格靠拢。参数简单参数使用url直接传递,使用@PathVariable获取复杂参数json传递,@RequestBody转换为对象@RestController等@RestController让整个控制器都默认转换为json方法上的参数consumes限制该方法接收什么类型的...

2019-02-21 15:53:38 237

原创 深入浅出spring boot 2.x 04-springMVC注解【笔记】

springMVC启动映射启动时将@RequestMapping配置内容保存到处理器映射HandlerMapping中通过拦截请求与HandlerMapping匹配,找到对应处理器将处理器和拦截器保存到HandlerExecutionChain对象中,返回给DispatcherServlet这样DispatcherServlet就可以运行它们了springMVC提供注解@Requ...

2019-02-21 15:11:30 203

原创 深入浅出spring boot 2.x 03-redis&mongo【笔记】

redis-springboot使用redistemplete,redistemplete默认使用jdkserializationredisserializer序列化,需要修改成stringredisserializer字符串序列化器rediscallback接口比较底层,需要处理内容较多,可读性较差,不建议使用。sessioncallback接口建议使用springboot通过@p...

2019-02-21 15:03:32 158

原创 springMVC如何找到Controller并接收参数

直接从DispatcherServlet的doDispatch说起,之前的内容请参照前一篇文章doDispatch方法下的代码HandlerExecutionChain mappedHandler = null;//通过getHandler获取到对应HandlerExecutionChainmappedHandler = this.getHandler(processedRequest)...

2019-02-21 13:31:54 284

原创 URL如何进入SpringMVC的Controller方法中

请求时如何找到具体的Controller的方法的doGet等是如何而来FrameworkServlet继承于HttpServletBean,HttpServletBean继承于HttpServletdoGet、doPost、doPut、doDelete等http请求均会调用processRequestFrameworkServlet部分相关源码如下:@Override protec...

2019-02-20 10:16:58 2647

原创 SpringMVC如何装载Controller的方法

启动时如何运行启动时会找到RequestMappingHandlerMapping的afterPropertiesSet运行,因为,InitializingBean接口会在bean初始化调用afterPropertiesSet方法,具体源码如下:// 1public class RequestMappingHandlerMapping extends RequestMappingInfo...

2019-02-20 10:12:44 604

原创 HTTP常用的四种请求方法get、post、put、delete及SpringMVC参数接收

get获取使用,如查询列表(少量参数时)post保存使用多参数查询使用put更新使用delete删除使用spring使用@GetMapping@PostMapping@PutMapping@DeleteMapping参数接收@RequestParam 与request.getParameter(“name”)相同url中?后面的参数...

2019-02-19 12:12:57 2030

原创 深入浅出spring boot 2.x 02-spring注解&jpa映射【笔记】

环境切换spring使用,@Profile用于切换各种环境springboot使用application-{profile}.properties进行配置使用参数spring.profiles.active配置激活引入xml配置bean,@importResourcespringEL 表达式@Value("${database.drivename})@Value("#{T...

2019-02-19 11:00:56 289

原创 深入浅出spring boot 2.x 01-springMVC对比【笔记】

百度网盘链接: https://pan.baidu.com/s/1XOmkxg4f2_ZqHq7SeujTog提取码: rvj6

2019-02-19 10:14:16 381

原创 Centos7使用nexus搭建maven仓库

安装jdk安装maventar -zxvf apache-maven-3.6.0-bin.tar.gzvi /etc/profileexport MAVEN_HOME=/home/apache-maven-3.6.0export PATH=MAVENHOME/bin:MAVEN_HOME/bin:MAVENH​OME/bin:PATHsource /etc/profilemvn -...

2019-02-15 15:00:56 338

原创 AngularJS中data-ng-app与ng-app区别

ng-apphtml中没有此属性,属于自定义属性,angularjs的指令都属于自定义属性data-ng-apphtml5中要求属性以data-开头,所以符合html5的标准写法

2019-02-15 11:15:15 595

原创 Hibernate注解@MappedSuperclass、@Embeddable、@Embedded用途

@MappedSuperclass标识在父类上面,可以将变量隐藏到子类中并映射到数据库不是完整的类,需要配合子类一起使用该类不能再有@Entity或@Table注解源码自行查看吧@Embeddable将一类设置为可引用,供其他类使用,源码如下/** * Example 1:* @Embeddable public class EmploymentPerio...

2019-02-15 10:46:18 631

原创 Hibernate注解@SecondaryTable用途

@SecondaryTable主要用在主表提取成公共表,子表是自行定义,但主键仍然关联的情况@SecondaryTable(name = "childtable", pkJoinColumns = {@PrimaryKeyJoinColumn(name = "childid")})childtable标识子表的名称pkJoinColumns 使用join管理的字段是主键,主键名称为chi...

2019-02-15 09:56:05 876

原创 Hibernate注解@Inheritance、@DiscriminatorColumn、@DiscriminatorValue用途

Inheritance必须定义其属性strategystrategy=InheritanceType.SINGLE_TABLE 将父类和所有子类集合,存在一张表中,全部创建新的字段strategy=InheritanceType.TABLE_PER_CLASS 每一个类创建一个表,这些表相互独立strategy=InheritanceType.JOINED 将父类、子类分别存放在不同...

2019-02-15 09:11:19 2613

原创 从零开始学架构 12-总结

架构设计是为了解决系统的复杂度高性能架构主线通过读写分离,分库分表进行解决nosql的用途,每类均对应了一种相关的解决方案对于单线程是如何实现并发的,通过多路I/O复用(Epoll)解决,如redis,spring单例注解...

2019-02-15 08:47:17 132

原创 从零开始学架构 11-互联网架构演进 【笔记】

企业的业务分为两类产品类如杀毒软件、苹果等技术创新推动业务发展如苹果取代诺基亚服务类:如百度搜索、淘宝购物等业务发展推动技术的发展如微信和其他通讯软件,肯定选微信,因为规模大,这样推动了微信的技术发展服务符合互联网的用户越多,服务的价值就越大。符合互联网的本质和特征:互联+网复杂度需要是性能瓶颈,稳定性,安全性。互联网业务发展阶段初创期业务发展期竞争期...

2019-02-15 08:46:52 146

原创 从零开始学架构 10-高性能架构模式&复杂度 【笔记】

高性能架构模式核心系统核心系统负责和业务无功能无关的通用功能,如模块加载,模块间通信等插件模块插件模块负责实现具体的业务逻辑设计关键点插件管理:核心系统需要知道哪些插件可用。核心系统提供插件注册表机制,插件模块信息,包括名、位置、加载时机等插件连接:一般连接都按照规范,常见的连接机制,有OSGI,消息队列,依赖注入等插件通信:必须通过核心系统,所以核心系统需要提供插件通信机制...

2019-02-14 14:08:45 158

原创 AndgularJS学习手册(安道译)【笔记】

说明:读本书没有记住太多东西,感觉重要但不知道的的做了个记录!angularjs中可以放与当前控制器相关的简单的业务逻辑,不要放太多业务逻辑jstestdrive做单元测试环境,名称一般以spec结尾测试脚本使用行为驱动开发框架jasmine进行测试karma测试protractor做端到端测试创建注册服务的三种方式serviceprovidefactory(最常见...

2019-02-14 13:55:53 146

原创 从零开始学架构 09-SOA架构&微服务 【笔记】

ESB:各个系统之间不同的接口进行互通。如json、xml、webservice等不同的接口,ESB去适配已经存在的各种异构系统,屏蔽异构系统对外提供各种不同的接口方式,以此来达到服务高效的,互联互通松耦合:减少各个服务间的依赖和互相影响SOA架构SOA架构比较高层级的架构设计理念,一般说SOA架构来构建了什么系统,不会说某个独立的系统采用了SOA架构SOA提出的背景是企业内部的IT...

2019-02-14 11:12:41 7953 1

原创 从零开始学架构 08-可扩展模式&分层架构 【笔记】

可扩展的基本思想:拆流程:如tcp四层模型服务:http,ftp服务功能:http的get,post,put,delete功能如学生管理系统按流程分:展示层、业务层、数据层、存储层按服务分:登录、注册、信息管理按功能分:更细粒度的功能,如注册:手机号注册、邮箱注册等典型的可扩展系统架构面向流程拆分:分层架构面向服务拆分:SOA,微服务架构面向功能拆分:微内核架构分层...

2019-02-14 11:03:00 405

原创 从零开始学架构 07计算高可用&业务高可用 【笔记】

计算高可用主备模式主机执行所有计算任务主从复制主执行部分任务,从执行部分任务业务高可用1、异地多活同城异区近似一个本地机房的效果跨城异地对于数据一致性要求不高,或者数据改变少,或数据丢失影响不大可以使用跨国异地为不透明地区用户提供服务如:亚马逊中国,亚马逊美国2、设计技巧保证核心业务的异地多活核心数据最终一致性异地多活理论上就不可能很快,因为这是物理定...

2019-02-14 10:56:34 168

原创 从零开始学架构 06-存储高可用 【笔记】

常见的高可用存储架构主备复制主从复制主主负载数据集群数据分区1. 主备复制缺点:备份机无读写操作,硬件成本有浪费,故障后需要人工干预,否则无法自动恢复2. 主从复制主写、从读,适合读多写少的系统,一般读是写的10倍甚至100倍以上主备与主从区别主从再主机发生故障时,从仍然可以读,对其相关的读操作业务不影响主从复制,主写从读,发挥了硬件的功能主从更复杂,主要体现在客户...

2019-02-14 10:36:10 237

原创 从零开始学架构 05-CAP理论 【笔记】

CAP理论分布式系统涉及读写操作时,一致性,可用性,分区容忍性三个要素只能保证两个,另外一个必须被牺牲C:一致性,强一致性,对于客户端来说同一时刻能看到相同的数据A:可用性,非故障的节点在合理的时间内返回合理的响应(不是错误和超时的响应)P:分区容忍性,当出现网络分区后,系统能够继续履行职责CAP理论对于一个分布式计算系统,不可能同时满足cap三个设计约束。或一个分布式系统,当涉及读...

2019-02-14 10:14:54 236

原创 从零开始学架构 04-计算高性能&FMEA故障模式分析 【笔记】

计算高性能单服务器的高性能单服务器高效能的关键之一就是服务器采取的网络编程模型服务器如何管理连接服务器如何处理请求以上两个设计点,最终都和操作系统的IO模型及进程模型相关IO模型:阻塞,非阻塞,同步,异步进程模型:单进程,多进程,多线程硬件负载均衡硬件负载均衡:F5、A10优点:功能强大,性能强大,稳定性高,支持安全防护缺点:价格昂贵扩展能力差,性能百万级...

2019-02-14 10:03:57 328

原创 缓存穿透、缓存击穿、缓存雪崩、缓存热点原理及方案【通俗版】

缓存穿透缓存中不存在,穿透到DB解决方案:采用布隆过滤器空值写进缓存,设置短时间缓存击穿缓存过期,同时大量请求,击穿到DB解决方案:双重校验锁缓存雪崩大量key同时过期,全部查询DB,导致雪崩解决方案:缓存时间设置为:过期时间+随即短时间缓存热点大部分业务同时命中同一份缓存解决方案:缓存时间设置不同复制多份缓存分布到多个服务器...

2019-02-14 09:08:06 148

原创 从零开始学架构 03-nosql&redis缓存【笔记】

nosql不仅仅是sql,是关系型数据库的补充,一般配合关系型数据库使用关系数据库存在如下缺点关系数据库存储的是行记录,无法存储数据结构关系数据库的结构(schema)扩展很不方便关系数据库大数据场景下IO较高关系数据库的全文搜索功能比较弱常见数据库k-v存储,redis文档数据库,mongodb列式数据库,hbase全文搜索引擎,elasticsearchredis...

2019-02-14 08:52:24 128

原创 从零开始学架构 02-高性能架构模式 【笔记】

高性能架构模式1. 读写分离集群模式下主机写,从机读,即通过复制将数据同步到从机。读写分离可以使用代码封装或中间件封装代码封装淘宝的tddl中间件,mysql-proxy、mysql router、atlas解决主从复制的延迟的几种方法写操作后的读操作指定发给数据库主服务器读从机失败后再读一次主机关键业务读写操作全部指向主机,非关键业务采用读写分离2. 分库分表数据量...

2019-02-13 16:59:59 162

原创 从零开始学架构 01-架构基础【笔记】

说明:对从零开始学架构这本书看时所做的记录模块,逻辑角度拆分,如注册模块、登录模块组件,物理角度来分,如web服务器,nginx框架是标准的,有规范的产品,关注规范架构关注结构软件架构指软件系统的顶层结构,为了高性能、高可用、可扩展、所以要做架构设计,但盲目的这样做会消耗很多额外的时间。架构设计的目的是为了解决复杂度带来的问题单机复杂度集群复杂度简单的系统更容易做到高性能...

2019-02-13 16:42:56 10040 1

原创 数据库事务的四种隔离级别及脏读、幻读、不可重复读【通俗版】

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入##未提交读...

2019-02-13 14:24:23 582

GoogleMaps API V3离线下载工具及使用.zip

GoogleMaps API V3离线下载工具及使用.zip 主要对其地图的下载,及自我编制。 离线下完全可以使用,只需先进行地图的下载。 添加了控件,离线下可进行操作。。。

2013-10-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除