- 博客(1171)
- 资源 (179)
- 收藏
- 关注
转载 基于git的源代码管理模型——git flow
Git Flow 是什么Git Flow是构建在Git之上的一个组织软件开发活动的模型,是在Git之上构建的一项软件开发最佳实践。Git Flow是一套使用Git进行源代码管理时的一套行为规范和简化部分Git操作的工具。2010年5月,在一篇名为“一种成功的Git分支模型”的博文中,@nvie介绍了一种在Git之上的软件开发模型。通过利用Git创建和管理分支的能力,为每个分支设定具
2017-11-10 14:26:34
683
转载 apache kafka监控系列-KafkaOffsetMonitor
概览最近kafka server消息服务上线了,基于jmx指标参数也写到zabbix中了,但总觉得缺少点什么东西,可视化可操作的界面。zabbix中数据比较分散,不能集中看整个集群情况。或者一个cluster中broker列表,自己写web-console比较耗时耗力,用原型工具画了一些管理界面东西,关键自己也不前端方面技术,这方面比较薄弱。这不开源社区提供了kafka的web管理平台Ka
2017-02-04 17:57:48
1034
转载 Spring事务Transaction配置的五种注入方式详解
地址:http://www.zuidaima.com/share/1828220435860480.htm前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个
2016-07-12 16:46:44
957
转载 Serverless架构的优缺点
Serverless架构或Serverless计算是软件架构风格向分布式系统发展结果,而当前建立一个系统的标准是面向服务架构(SOA)或者是SOA之微服务架构。在微服务架构中,应用/服务被开发出来然后部署,每个服务组相关一些函数,在Serverless架构中,函数是被开发并部署到独立的平台,这个平台会照顾执行这些函数响应一些事件,举例:当有HTTP请求访问时,也许有一个函数计算计算出一个响
2016-06-21 11:55:18
5007
转载 什么是Serverless无服务器架构?
Serverless不代表再也不需要服务器了,而是说:开发者再也不用过多考虑服务器的问题,计算资源作为服务而不是服务器的概念出现。Serverless是一种构建和管理基于微服务架构的完整流程,允许你在服务部署级别而不是服务器部署级别来管理你的应用部署,你甚至可以管理某个具体功能或端口的部署,这就能让开发者快速迭代,更快速地开发软件。 以亚马逊的AWS Lambda为案例,Lambda能让
2016-06-21 11:50:40
2596
转载 Serverless架构
这是来自martinfowler.com的Serverless架构一文的大意翻译。什么是Serverless?Serverless首先是用于描述我们的应用程序是明显或充分地依赖第三方应用或服务来管理服务器端逻辑和状态,这些应用是典型的富客户端应用,比如单页Web应用或移动应用,它们使用基于云可访问的数据库比如Parse或Firebase,还有授权服务比如Auth0AWS Cognito
2016-06-21 11:48:46
1534
转载 DDD CQRS架构和传统架构的优缺点比较
明天就是大年三十了,今天在家有空,想集中整理一下CQRS架构的特点以及相比传统架构的优缺点分析。先提前祝大家猴年新春快乐、万事如意、身体健康!最近几年,在DDD的领域,我们经常会看到CQRS架构的概念。我个人也写了一个ENode框架,专门用来实现这个架构。CQRS架构本身的思想其实非常简单,就是读写分离。是一个很好理解的思想。就像我们用MySQL数据库的主备,数据写到主,然后查询从备来查,
2016-06-21 11:45:40
1570
转载 为什么微服务应该是事件驱动?
建立微服务的真正道路是事件驱动,这是一个有着DDD, CQRS, Event-sourcing, event streaming, complex-event processing(CEP) 等背景以及丰富JavaEE技术经验的架构师的认识,他经历了从传统整体型monolith到微服务架构之转变,细节技术涉及从容器技术 (Docker, Kubernetes) 到JVM层 (Spring
2016-06-21 11:43:23
1343
转载 分布式系统Paxos算法
这是一个有关Paxos算法非常形象的讲解与示范。Paxos是能够基于一大堆完全不可靠的网络条件下却能可靠确定地实现共识一致性的算法。也就是说:它允许一组不一定可靠的处理器(服务器)在某些条件得到满足情况下就能达成确定的安全的共识,如果条件不能满足也确保这组处理器(服务器)保持一致。什么是共识? 具体来说是这样:分布式系统中由于网络之间通讯可能会中断,虽然概率很低,但是没有100%
2016-06-21 11:40:28
2895
转载 分布式系统的Raft算法
过去, Paxos一直是分布式协议的标准,但是Paxos难于理解,更难以实现,Google的分布式锁系统Chubby作为Paxos实现曾经遭遇到很多坑。 来自Stanford的新的分布式协议研究称为Raft,它是一个为真实世界应用建立的协议,主要注重协议的落地性和可理解性。 在了解Raft之前,我们先了解Consensus一致性这个概念,它是指多个服务器在状态达成一致,但是在一
2016-06-21 11:37:51
642
转载 Linux 查看系统硬件信息(实例详解)
linux查看系统的硬件信息,并不像windows那么直观,这里我罗列了查看系统信息的实用命令,并做了分类,实例解说。cpulscpu命令,查看的是cpu的统计信息.blue@blue-pc:~$ lscpuArchitecture: i686 #cpu架构CPU op-mode(s): 32-bit, 64-b
2016-06-20 18:15:00
556
转载 Linux进程实时IO监控iotop命令详解
介绍Linux下的IO统计工具如iostat, nmon等大多数是只能统计到per设备的读写情况, 如果你想知道每个进程是如何使用IO的就比较麻烦.iotop 是一个用来监视磁盘 I/O 使用状况的 top 类工具。iotop 具有与 top 相似的 UI,其中包括 PID、用户、I/O、进程等相关信息。 实例直接运行就好iotop输出如
2016-06-20 17:55:23
1033
转载 Linux网络流量实时监控ifstat iftop命令详解
ifstat介绍ifstat工具是个网络接口监测工具,比较简单看网络流量 实例默认使用#ifstat eth0 eth1 KB/s in KB/s out KB/s in KB/s out 0.07 0.20 0.00 0.00 0.07
2016-06-20 17:53:52
776
转载 Linux 运行进程实时监控pidstat命令详解
简介 pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等。pidstat首次运行时显示自系统启动开始的各项统计信息,之后运行pidstat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。 实例讲解默认参数执行pidstat,将输出系统启动后所有活动进程的cpu统计
2016-06-20 17:33:45
647
转载 Linux CPU实时监控mpstat命令详解
简介mpstat是Multiprocessor Statistics的缩写,是实时系统监控工具。其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息。mpstat最大的特点是:可以查看多核心cpu中每个计算核心的统计数据;而类似工具vmstat只能查看系统整体cpu情况。
2016-06-20 17:24:08
900
转载 Linux iostat监测IO状态
Linux系统出现了性能问题,一般我们可以通过top、iostat、free、vmstat等命令来查看初步定位问题。其中iostat可以给我们提供丰富的IO状态数据。1. 基本使用$iostat -d -k 1 10参数 -d 表示,显示设备(磁盘)使用状态;-k某些使用block为单位的列强制使用Kilobytes为单位;1 10表示,数据显示每隔1秒刷新一次,共显示10次。
2016-06-20 17:16:57
868
转载 Linux服务器上监控网络带宽的18个常用命令
本文介绍了一些可以用来监控网络使用情况的Linux命令行工具。这些工具可以监控通过网络接口传输的数据,并测量目前哪些数据所传输的速度。入站流量和出站流量分开来显示。一些命令可以显示单个进程所使用的带宽。这样一来,用户很容易发现过度使用网络带宽的某个进程。这些工具使用不同的机制来制作流量报告。nload等一些工具可以读取"proc/net/dev"文件,以获得流量统计信息;而一些工具
2016-06-20 16:58:42
851
转载 VRRP协议详解-----(2)
2.4 VRRP通告报文的发送与接收处理流程2.4.1 当收到一个VRRP通告报文时,执行以下操作: 1. 检查IP包头的TTL是否为2552. 检查VRRP报文的version字段是否为23. 检查VRRP报文的完整性,即是否包含RFC所定义的各字段4. 检查checksum字段5. 检查VRID字段是否和本地配置的VRID一致6.
2016-06-20 16:53:59
2145
转载 VRRP协议详解-----(1)
目录入木三分学网络第一篇--VRRP协议详解1. VRRP产生背景及应用环境1.1为什么要用VRRP2.VRRP基本原理及实现过程2.1 VRRP基本概念2.2 VRRP报文组成2.3 VRRP协议状态机2.3.1初始状态(Initialize)2.3.2备份路由器状态(Backup)2.3.3 Master路由器(Master state)2.4
2016-06-20 16:50:39
1606
转载 DNS 原理入门
DNS 是互联网核心协议之一。不管是上网浏览,还是编程开发,都需要了解一点它的知识。本文详细介绍DNS的原理,以及如何运用工具软件观察它的运作。我的目标是,读完此文后,你就能完全理解DNS。一、DNS 是什么?DNS (Domain Name System 的缩写)的作用非常简单,就是根据域名查出IP地址。你可以把它想象成一本巨大的电话本。举例来说,如果你要
2016-06-18 11:07:01
539
转载 字符编码笔记:ASCII,Unicode和UTF-8
今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易懂,希望能对其他朋友有用。毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识。1. ASCII码我们知道,在计
2016-06-18 10:57:37
483
转载 图解 Monad
函数式编程有一个重要概念,叫做Monad。网上有很多解释(这里和这里),但都很抽象,不容易看懂。我尝试了好多次,还是不明白Monad到底是什么。昨天,我读到了Aditya Bhargava的文章,他画了很多图。我想了半天,终于恍然大悟。下面,我就用这些图来解释Monad。1.软件最基本的数据,就是各种值(value)。2.
2016-06-18 10:54:14
1549
转载 通信协议:HTTP、TCP、UDP
原文出处: 碧雪轩的博客 TCP HTTP UDP:都是通信协议,也就是通信时所遵守的规则,只有双方按照这个规则“说话”,对方才能理解或为之服务。TCP HTTP UDP三者的关系:TCP/IP是个协议组,可分为四个层次:网络接口层、网络层、传输层和应用层。在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。
2016-06-18 10:43:33
525
转载 互联网协议入门(二)
原文出处: 阮一峰的日志(@ruanyf) 上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想。这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的。(接上文)七、一个小结先对前面的内容,做一个小结。我们已经知道,网络通信就是交换数据包。电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包
2016-06-18 10:20:36
441
转载 Wireshark和TcpDump抓包分析心得
1. Wireshark与tcpdump介绍 Wireshark是一个网络协议检测工具,支持Windows平台和Unix平台,我一般只在Windows平台下使用Wireshark,如果是Linux的话,我直接用tcpdump了,因为我工作环境中的Linux一般只有字符界面,且一般而言Linux都自带的tcpdump,或者用tcpdump抓包以后用Wireshark打开分析。在Windows
2016-06-18 10:06:56
1144
转载 伯克利包过滤(Berkeley Packet Filter,BPF)语言
伯克利包过滤(Berkeley Packet Filter,BPF)语言libpcap支持一种功能非常强大的过滤语言——“伯克利包过滤”语法。使用BPF过滤规则,你可以确定该获取和检查哪些流量,忽略哪些流量。BPF让你能够通过比较第2、3、4层协议中各个数据字段值的方法对流量进行过滤。BPF中内置了一些“基元”来指代一些常用的协议字段。可以用“host”、"prot"之类的基元写出非常简洁
2016-06-18 10:05:14
8693
转载 互联网协议入门(一)
我们每天使用互联网,你是否想过,它是如何实现的?全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网
2016-06-18 09:06:56
383
转载 DNS 原理入门
DNS 是互联网核心协议之一。不管是上网浏览,还是编程开发,都需要了解一点它的知识。本文详细介绍DNS的原理,以及如何运用工具软件观察它的运作。我的目标是,读完此文后,你就能完全理解DNS。一、DNS 是什么?DNS (Domain Name System 的缩写)的作用非常简单,就是根据域名查出IP地址。你可以把它想象成一本巨大的电话本。举例来说,如果你要
2016-06-17 17:47:10
438
转载 软件测试中的V模型、W模型和H模型
1.软件测试过程模型-V模型 是软件开发瀑布模型的变种,主要反映测试活动与分析和设计的关系;局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现2.软件测试过程模型-W模型 在V模型的基础上,增加千开发阶段的同步测试,形成W模型;测试与开发同步进行,有利用尽早的发现问题局限性:仍把开发
2016-06-17 15:29:09
5976
转载 jstack, jstat, jmap, jinfo, 教你如何在背后偷窥你的进程^^
呵呵,不着急,先一下“是什么”,再说一下“怎么用”。 是什么jps查看所有的jvm进程,包括进程ID,进程启动的路径等等。我自己也用PS,即:ps -ef | grep javajstack观察jvm中当前所有线程的运行情况和线程当前状态。系统崩溃了?如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stac
2016-06-15 16:21:49
1079
转载 使用jvisualvm来远程观察Java程序
这里要介绍的第一种方式是,使用JMX来进行监控。这种方式要求我们在启动Java程序的时候手动开启jmx remote功能。开启的方式是使用下面的命令行参数启动Java程序:-Dcom.sun.management.jmxremote.port= -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote
2016-06-15 15:55:07
601
转载 垃圾收集器:引用计数算法
引用计数算法作为垃圾收集器最早的算法,有其优势,也有其劣势,虽然现在的JVM都不再采用引用计数算法进行垃圾回收【例如Sun的Java hotspot采用了火车算法进行垃圾回收】,但这种算法也并未被淘汰,在著名的单进程高并发缓存Redis中依然采用这种算法来进行内存回收【后绪会以Redis作为例子,说明该算法】什么是引用计数算法直白一点,就是对于创建的每一个对象都有一个与之关联的
2016-06-07 20:32:15
439
转载 Redis内存回收:LRU算法
Redis技术交流群 481804090Redis:https://github.com/zwjlpeng/Redis_Deep_ReadRedis中采用两种算法进行内存回收,引用计数算法以及LRU算法,在操作系统内存管理一节中,我们都学习过LRU算法(最近最久未使用算法),那么什么是LRU算法呢LRU算法作为内存管理的一种有效算法,其含义是在内存有限的情况下,当内存容量不
2016-06-07 20:29:51
623
转载 JVM内存堆布局图解分析
JAVA能够实现跨平台的一个根本原因,是定义了class文件的格式标准,凡是实现该标准的JVM都能够加载并解释该class文件,据此也可以知道,为啥Java语言的执行速度比C/C++语言执行的速度要慢了,当然原因肯定不止这一个,如在JVM中没有数据寄存器,指令集使用的是栈来保存中间数据...等,尽管Java的贡献者们为执行速度的提高想了各种办法,如JIT、动态编译器等,以下是Leetcode中一道
2016-06-07 20:11:13
617
转载 redis学习笔记——主从同步(复制)
在Redis中,用户可以通过执行SLAVEOF命令或者设置slaveof选项,让一个服务器去复制(replicate)另一个服务器,我们称呼被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave),如图所示。假设现在有两个Redis服务器,地址分别为127.0.0.1:6379和127.0.0.1:12345,如果我们向服务器127.0.
2016-06-07 19:40:59
843
转载 redis学习笔记——RDB和AOF持久化二
上一篇对RDB的源码分析是比较多的,但是AOF持久化执行进行了一些理论上的分析和概念的说明。本来想自己偷一些懒,将上篇文章中最后所给链接的AOF实现代码随便过一过算了,后来也就是在过的过程中发现自己这也看不懂那也看不懂才知道AOF的重要性和难度。后来又花了不少时间查阅资料、结合源代码分析,对AOF的大概执行过程有了更深一些的了解,现在就将自己的理解和大家进行分享。其中肯定有理解不正确的地方
2016-06-06 21:29:59
659
Apache Sqoop Cookbook
2014-08-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人