- 博客(439)
- 收藏
- 关注
原创 专注的重要性
专注的重要性 成功和非常成功的区别,在于一个词:专注;这是巴菲特和比尔盖茨都共同提出的观点。 什么是专注? 专注并不意味着短视,反而需要你用更宽阔的视野去了解自己当下要做什么,以及为什么要这么做。专注也不是指在很长的一段时间内僵化地重复一件事;实际上,要做大事,你必须根据经验教训做出明知的迭代和修正。 专注包含以...
2017-09-12 11:26:36 293
原创 互联网架构 -- 负载均衡
互联网架构 -- 负载均衡 什么是负载均衡 负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】。 常见的负载均衡方案 常见互联网分布式架构分为:客户端层、反向代理nginx层、站点层、服务层、数据层。可...
2017-09-11 16:36:59 254
原创 互联网架构 -- 高并发
互联网架构 -- 高并发 高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。 高并发的标准 响应时间:系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间。吞吐量:单位时间内处理的请求数量。Q...
2017-09-11 14:23:19 161
原创 互联网架构 -- 高可用
互联网架构 -- 高可用 什么是高可用 高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。 高可用标准 假设系统一直能够提供服务,我们说系统的可用性是100%。如果系统每运行100个时间单位,会有1个时间单位无法提供服务,我们说系统的可用性是9...
2017-09-07 18:08:10 122
原创 互联网项目架构
互联网项目架构 什么是架构设计 通俗的说,架构设计就像是小学考试中解答应用题的过程,但是解决的问题更复杂,构思设计的过程更庞大,解题的工作量更大。 项目的质量指标 软件开发的最终目标是使用代码去实现抽象的业务逻辑,然后根据下面的指标评价项目的好坏: 功能:功能目标是应用的基本要求,如果不能实现既定的功能逻...
2017-09-06 17:59:40 756
原创 如何构建一个安全, 稳定, 高效的互联网平台体系架构
如何构建一个安全, 稳定, 高效的互联网平台体系架构 构建一个比较完善的互联网平台体系架构,广义上可以归纳为:高可用性,高扩展性,高性能,高安全性。 高可用性 高可用性又可以分为硬件高可用和软件高可用,其最根本的原理就是解决单点问题。 硬件高可用:服务器、网络设备等都应该避免单点问题 服务器...
2017-09-04 17:12:55 872
原创 关于HTTP和HTTPS的安全问题
关于HTTP和HTTPS的安全问题 普通HTTP请求存在的问题 HTTP 本身是明文传输的,没有经过任何安全处理。例如用户在百度搜索了一个关键字,比如“苹果手机”,中间者完全能够查看到这个信息,并且有可能打电话过来骚扰用户。也有一些用户投诉使用百度时,发现首页或者结果页面浮了一个很长很大的广告,这也肯定是中间者往页面插的广告内容。如果劫持技术比较低劣的话,用户...
2017-08-31 14:46:51 552
原创 Redis几个认识误区
Redis几个认识误区 Redis不可能比Memcache快 很多开发者都认为Redis不可能比Memcached快,Memcached完全基于内存,而Redis具有持久化保存特性,即使是异步的,Redis也不可能比Memcached快。但是测试结果基本是Redis占绝对优势。一直在思考这个原因,目前想到的原因有这几方面。 Libevent。和Mem...
2017-08-17 18:17:44 88
原创 java -- Iterator和Enumeration比较
java -- Iterator和Enumeration比较 区别在哪 在Java集合中,我们通常都通过 “Iterator(迭代器)” 或 “Enumeration(枚举类)” 去遍历集合。先看看下面源码: Enumeration是一个接口,它的源码如下:package java.util;public interface Enumerat...
2017-08-17 16:24:32 90
原创 java -- Map总结
java -- Map总结 框架图 概括 接口 Map 是“键值对”映射的抽象接口。AbstractMap 实现了Map中的绝大部分函数接口。它减少了“Map的实现类”的重复编码。SortedMap 有序的“键值对”映射接口。NavigableMap 是继承于SortedMap的,支持导航函数的接口。 实现类 ...
2017-08-17 14:44:38 183
原创 java -- LinkedHashMap
java -- LinkedHashMap 特点 LinkedHashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。继承自HashMap 所以依然是散列表,拥有key-value结构。LinkedHashMap 键和值都可以为null。与HashMap有着同样的存储结构,但它加入了一个双向...
2017-08-16 17:25:31 91
原创 java -- WeakHashMap
java -- WeakHashMap 特点 WeakHashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。WeakHashMap 也是一个散列表,它存储的内容也是键值对(key-value)映射。WeakHashMap 键和值都可以是null。WeakHashMap 的键是“弱键”。在...
2017-08-16 16:22:39 80
原创 java - TreeMap
java - TreeMap 特点 TreeMap 是一个有序的key-value集合,它是通过红黑树实现的。TreeMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。TreeMap 实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集合。TreeMap 基...
2017-08-15 18:24:25 105
原创 java -- HashTable
java -- HashTable 特点 HashTable 是一个散列表,它存储的内容是键值对(key-value)映射。HashTable 继承于Dictionary,实现了Map、Cloneable、java.io.Serializable接口。HashTable 的实现同步的,这意味着它是线程安全的。它的key、value都不可以为null。此外,Hash...
2017-08-14 17:54:50 82
原创 java -- HashMap
java -- HashMap 特点 HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为null。此外,HashMap中...
2017-08-14 17:34:38 97
原创 java -- Set总结
java -- Set总结 学习Set会容易很多,毕竟,Set的实现类都是基于Map来实现的(HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。 首先,我们看看Set架构。 Set 是继承于Collection的接口。它是一个不允许有重复元素的集合。AbstractSet 是一个抽象类,它继承于A...
2017-08-11 18:20:33 96
原创 Redis管道机制(pipeline)
Redis管道机制(pipeline) Redis的管道机制,其实是为了批量读写而设计的,如果进行多次的读和写数据到redis,每次都建立一个链接,这样是比较消耗资源的,而且也比较忙,于是想到了管道机制(pipeline),只建立一个连接,然后批量执行读或写。 插入数据效果 非管道: 数据量 = 2W, 执行时间 = 1分多钟 ...
2017-08-11 11:23:48 1460
原创 java -- TreeSet
java -- TreeSet TreeSet和HashSet很类似,不过是以HashMap实现,并且是有序的。 优点 没有重复元素元素可以为null操作很简单,更像是对HashMap做了一次“封装”,而且只使用了HashMap的key来实现各种特性。有序,因为底层以TreeMap实现,自动排序了可以被克隆,因为实现了Cloneable接口...
2017-08-04 18:09:56 100
原创 java -- HashSet
java -- HashSet HashSet 是一个没有重复元素的集合。 优点 没有重复元素元素可以为null操作很简单,更像是对HashMap做了一次“封装”,而且只使用了HashMap的key来实现各种特性。 缺点 不能保证元素的顺序非同步的,也就是会出现fail-fast 工作原理 ...
2017-08-04 17:05:04 108
原创 java -- List总结
java -- List总结 概括 1. List 是一个接口,它继承于Collection的接口。它代表着有序的队列。 2. AbstractList 是一个抽象类,它继承于AbstractCollection。AbstractList实现List接口中除size()、get(int location)之外的函数。 3. AbstractSe...
2017-08-04 11:17:44 84
原创 java -- 集合错误机制 -- fail-fast
java -- 集合错误机制 -- fail-fast fail-fast 机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。 例如:当某一个线程A通过iterator去遍历某集合的过程中,若该集合的内容被其他线程所改变了;那么线程A访问集合时,就会抛出Concur...
2017-08-03 18:06:23 138
原创 java -- Stack
java -- Stack Stack是栈。继承于Vector,它的特性是:先进后出(FILO, First In Last Out)。 特点 先进后出Stack也是通过数组实现的,而非链表,Stack是继承于Vector。当然,我们也可以将LinkedList当作栈来使用 常用方法 代码示例import...
2017-08-03 16:20:22 87
原创 java -- Vector
java -- Vector Vector 是矢量队列,和ArrayList有些类似,不过差别就在于Vector是线程安全的。 总结 Vector实际上是通过一个数组去保存数据的。当我们构造Vecotr时;若使用默认构造函数,则Vector的默认容量大小是10。当Vector容量不足以容纳全部元素时,Vector的容量会增加。若容量增加系数 &...
2017-08-03 15:30:21 91
原创 java -- LinkedList
java -- LinkedList LinkedList是一个简单的数据结构,与ArrayList不同的是,他是基于链表实现的。 优点 插入和删除操作比 ArrayList 更加高效LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。不需要连续的存储空间,只需...
2017-08-03 14:47:41 107
原创 java -- ArrayList
Java -- ArrayList ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。 优点 查找数据性能很快,跟Vector比也要快些可以插入任何数据类型以数组实现,节约空间,但有容量限制,默认初始化大小为10,当超出后,会自动扩容为原来的1/2(50%)的容量,...
2017-08-02 18:15:03 68
原创 Java常用数据结构
Java常用数据结构 java集合的总体框架 Java集合是java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。Java集合工具包位置是java.util.* Java集合主要可以划分为4个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Co...
2017-08-01 18:22:10 94
原创 面试经验
面试经验 德行 眼神:要坚定,可以看着面试官,不能飘忽不定。 身体语言:不能吊儿郎当,不能动来动去,坐姿规矩自然,不需要紧张,表现出性格稳定就好 沟通:说话平稳,不浮躁,遇到问题时,先沉着思考一下,不需要紧张,知之为知之,不知为不知,不需要装。情绪保持稳定,遇到刁难或挑衅,不需要紧张。 技术 卷子重要性:很多企业要程序员...
2017-07-11 17:36:13 210
原创 MySQL-- SQL优化经过
MySQL-- SQL优化经过 背景:有一个SQL如下SELECT ut.* FROM user_transaction ut WHERE tx_type IN (1, 4, 8) AND tx_status = 1 AND share_public = 1 AND user_id != 103 AND (peer_user_id IS NULL OR peer...
2017-07-07 18:50:51 99
原创 常用设计模式
常用设计模式 单例模式(关键:new 一个 static 对象) 一个类只有一个示例,最典型就是Sping Ioc。 优点 只有一个对象,节省资源,提高系统性能。避免共享资源被重复占用,如程序计数器、资源文件的访问,对线程安全有一定帮助。允许可变数目的实例,自己new就可以。 缺点 不适用于变化的对象,如果同一类型的对...
2017-07-07 17:31:25 89
原创 Spring 核心组件
Spring 核心组件 Spring 框架的总体架构图 Spring 框架中的核心组件只有三个:Core、Context 和 Beans。它们构建起了整个 Spring 的骨骼架构。没有它们就不可能有 AOP、Web 等上层的特性功能。 Spring 的设计理念 如果再在它们三个中选出核心的话,那就非 Beans 组件莫...
2017-06-20 17:39:01 338
原创 程序员的职业规划
程序员的职业规划 本博文主要用于个人学习和总结使用,如果问题请联系博主,可马上删除。 一位网友的建议 在某一领域,建立自己的知识体系,形成顶端优势。因为只有你形成了知识体系,才会更有价值,才能更好的解决问题。培养自己的通用能力,比如沟通、演讲、管理、写作、讲授、组织、辅导等。这些通用能力,能让你更好的与人协作,也能让你获得更好更多的做事机会,能够更好的成长。...
2017-05-18 16:06:41 95
原创 String事务 + 整合ORM框架
String事务 + 整合ORM框架 http://blog.csdn.net/bao19901210/article/details/41724355http://www.cnblogs.com/xujian2014/p/5282335.htmlhttp://blog.csdn.net/frankcheng5143/article/details/50634487...
2017-05-17 16:42:53 101
原创 Spring + Hibernate 整合
Spring + Hibernate 整合 http://www.cnblogs.com/xujian2014/p/5282335.html http://blog.csdn.net/js931178805/article/details/39642743 http://blog.csdn.net/js931178805/article/details/39643981...
2017-05-09 17:10:47 70
原创 Hibernate--面向对象查询语言和锁
声明:本贴只用于个人学习和总结,没有任何商业用途,如果侵权或问题,请尽早联系,本人马上删贴。 Hibernate--面向对象查询语言和锁 hibernate做了数据库中表和我们实体类的映射,使我们不必再编写sql语言了。但是有时候查询的特殊性,还是需要我们手动来写查询语句呢,Hibernate框架为了解决这个问题给我们提供了HQL(Hibernate Query ...
2017-05-04 17:32:15 182
原创 Hibernate--缓存机制+懒加载
声明:本贴只用于个人学习和总结,没有任何商业用途,如果侵权或问题,请尽早联系,本人马上删贴。 Hibernate--缓存机制+懒加载 Hibernate作为和数据库数据打交道的框架,自然会设计到操作数据的效率问题,而对于一些频繁操作的数据,缓存策略就是提高其性能一种重要手段,而hibernate框架是支持缓存的,而且支持一级和二级两种缓存,合理的使用缓存策略可以大大...
2017-05-04 16:47:49 152
原创 Hibernate--关系映射
声明:本贴只用于个人学习和总结,没有任何商业用途,如果侵权或问题,请尽早联系,本人马上删贴。 Hibernate--关系映射 在设计数据库时我们会考虑,表与表之间的关系,例如我们前边经常提到的一对一,一对多,多对多关系,在数据库中我们通过外键,第三张表等来实现这些关系。而hibernate时间实体类和数据库中的表进行的映射,这些关系如何映射呢?这里简单总结一下:...
2017-05-04 15:44:04 100
原创 Hibernate--POJO对象的操作
声明:本贴只用于个人学习和总结,没有任何商业用途,如果侵权或问题,请尽早联系,本人马上删贴。 Hibernate--POJO对象的操作 POJO对象其实就是我们的实体,这篇博客总结一下框架对POJO对象对应数据库主键的生成策略,和一些对POJO对象的简单增删改查的操作。 hibernate框架中主键的生成策略有三种方式: 数据库负责生成主...
2017-05-03 18:27:49 115
原创 Hibernate--概念
声明:本贴只用于个人学习和总结,没有任何商业用途,如果侵权或问题,请尽早联系,本人马上删贴。 Hibernate--概念 作为SSH三大框架之一的hibernate,是用来把程序的Dao层和数据库打交道用的,它封装了JDBC的步骤,是我们对数据库的操作更加简单,更加快捷。利用Hibernate框架我们就可以不再编写重复的JDBC代码,不再反复的测试我们的SQL语句...
2017-05-03 16:32:22 119
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人