
java
ting4
这个作者很懒,什么都没留下…
展开
-
水平分库分表的关键步骤和技术难点
在之前的文章中,我介绍了分库分表的几种表现形式和玩法,也重点介绍了垂直分库所带来的问题和解决方法。本篇中,我们将继续聊聊水平分库分表的一些技巧。分片技术的由来关系型数据库本身比较容易成为系统性能瓶颈,单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。在互联网行业海量数据和高并发访问的考验下,聪明的技术人员提出了分库分表技转载 2017-09-18 15:24:06 · 614 阅读 · 0 评论 -
elasticsearch -2.3.x head插件安装(windows系统)
1.进入命令行: home键+R命令:> cd \elasticsearch根目录\bin\> plugin install mobz/elasticsearch-head2.运行es3.打开http://localhost:9200/_plugin/head/原创 2017-09-27 11:40:26 · 346 阅读 · 0 评论 -
Elasticsearch基本知识
原创 2017-09-27 17:17:11 · 281 阅读 · 0 评论 -
JDK里的设计模式
Structural(结构模式)Adapter:把一个接口或是类变成另外一种。java.util.Arrays#asList()javax.swing.JTable(TableModel)java.io.InputStreamReader(InputStream)java.io.OutputStreamWriter(OutputStream)javax.xml.bind.ann转载 2017-10-17 17:30:49 · 240 阅读 · 0 评论 -
Synchronized及其实现原理
一、Synchronized的基本使用 Synchronized是Java中解决并发问题的一种最常用的方法,也是最简单的一种方法。Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。从语法上讲,Synchronized总共有三种用法: (1)修饰普通方法 (2)修饰静态方法转载 2017-10-20 16:05:17 · 302 阅读 · 0 评论 -
WebMagic写的网络爬虫
WebMagic写的网络爬虫一、前言 最近因为有爬一些招聘网站的招聘信息的需要,而我之前也只是知道有“网络爬虫”这个神奇的名词,具体是什么、用什么实现、什么原理、如何实现比较好都不清楚,因此最近大致研究了一下,当然,研究的并不是很深入,毕竟一个高大上的知识即使站在巨人的肩膀上,也不能两三天就融会贯通。在这里先做一个技术储备吧,具体的疑难知识点、细节等以后一点一点的完善转载 2017-10-22 11:43:56 · 544 阅读 · 0 评论 -
java ms
ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一个副本,每个线程都可以独立地改变自己的副本,而不会和其他线程的副本冲突。 ThreadLocal类中维护一个Map,用于存储每一个线程的变量副本,Map中元素的键为线程对象,而值为对应线程转载 2017-10-23 11:47:46 · 622 阅读 · 0 评论 -
限流模式-Guava的RateLimiter
目前有几种常见的限流方式:1、通过限制单位时间段内调用量来限流2、通过限制系统的并发调用程度来限流3、使用漏桶(Leaky Bucket)算法来进行限流4、使用令牌桶(Token Bucket)算法来进行限流具体我们看下第三种和第四中算法,也是我们目前看到的最常见的限流算法漏桶(Leaky Bucket)算法思路很简单,水(请求)先进入到漏桶里,漏桶以一定的速度出水(接口有原创 2017-11-27 14:32:00 · 569 阅读 · 0 评论 -
JAVA,最起码,你应该知道这些!
马老师说过,员工的离职原因很多,只有两点最真实: 钱,没给到位 心,受委屈了 当然,我是想换个平台,换个方向,想清楚为什么要跳槽,如果真的要跳槽,想要拿到一个理想的offer,除了运气,基本功也要足够的扎实,希望下面的面试经验能给你们能够提供一些帮助。 项目经验 面试官在一开始会让你进行自我介绍,主要是想让你介绍一下自己做过的一些项目,看看你对这些项目的了解程度,因为很多人简历转载 2017-09-25 17:47:04 · 454 阅读 · 0 评论 -
Shiro基本知识
ubject:主体,代表了当前“用户”,这个用户不一定是一个具体的人,与当前应用交互的任何东西都是Subject,如网络爬虫,机器人等;即一个抽象概念;所有Subject都绑定到SecurityManager,与Subject的所有交互都会委托给SecurityManager;可以把Subject认为是一个门面;SecurityManager才是实际的执行者;SecurityManager:安原创 2017-09-25 19:37:46 · 294 阅读 · 0 评论 -
java多线程知
wait()与sleep()的区别wait():释放占有的对象锁,线程进入等待池,释放cpu,而其他正在等待的线程即可抢占此锁,获得锁的线程即可运行程序。而sleep()不同的是,线程调用此方法后,会休眠一段时间,休眠期间,会暂时释放cpu,但并不释放对象锁。也就是说,在休眠期间,其他线程依然无法进入此代码内部。休眠结束,线程重新获得cpu,执行代码。wait()和sleep()最大的不同原创 2017-05-24 16:40:34 · 197 阅读 · 0 评论 -
nio的实现原理
一.java NIO 和阻塞I/O的区别 假如现在你对阻塞I/O已有了一定了解,我们知道阻塞I/O在调用InputStream.read()方法时是阻塞的,它会一直等到数据到来时(或超时)才会返回;同样,在调用ServerSocket.accept()方法时,也会一直阻塞到有客户端连接才会返回,每个客户端连接过来后,服务端都会启动一个线程去处理该客户端的请求。阻塞I/O的通信模型示意图如下:原创 2017-05-16 09:41:37 · 1116 阅读 · 0 评论 -
String 类
String str = “我是一个字符串”;String str2 = new String(“我也是一个字符串”)对于上面两种创建字符串的方式我来具体的分析一下:1、 对于String来说,有一个特殊的String pool,专门存储字符串数据。2、 String str = “我是一个字符串”的创建过程:首先、java会去到String pool 寻找有没有一个值为“我是一个原创 2017-05-26 10:38:17 · 323 阅读 · 0 评论 -
Java到底是不是一种纯面向对象语言
Java——是否确实的 “纯面向对象”?让我们深入到Java的世界,试图来证实它。在我刚开始学习 Java 的前面几年,我从书本里知道了 Java 是遵循 “面向对象编程范式(Object Oriented Programming paradigm)”的。在Java世界内一切都是对象,甚至包括字符串(String)这些都是对象(在 C 语言中,字符串是字符数组),那时候,我认为 Java是原创 2017-05-26 14:30:26 · 11966 阅读 · 2 评论 -
35个Java代码性能优化总结
代码优化的目标是:1、减小代码的体积2、提高代码运行的效率代码优化细节1、尽量指定类、方法的final修饰符带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果原创 2017-05-26 16:41:23 · 302 阅读 · 0 评论 -
dubbo使用的协议
1、缺省协议,使用基于mina1.1.7+hessian3.2.1的tbremoting交互。连接个数:单连接连接方式:长连接传输协议:TCP传输方式:NIO异步传输序列化:Hessian二进制序列化适用范围:传入传出参数数据包较小(建议小于100K),消费者比提供者个数多,单一消费者无法压满提供者,尽量不要用dubbo协议传输大文件或超大字符串。适用场景:常规远程服务方法调用2、原创 2017-05-17 11:56:10 · 1580 阅读 · 0 评论 -
Map最优的遍历
我们都知道遍历Map一般有3种方法,values(),keySet()和entrySet(),常见的是keySet用的多,简单容易理解,entrySet()是返回Map中的静态内部类Entry类类型的Set实例,当然了你别说forEach,forEach只是一种代替for(int i=0;;)和while()遍历的一种方式,底层也是用迭代器实现的,只不过把部分东西隐藏了,建议大家平常开发中能用fo转载 2017-05-31 11:25:48 · 846 阅读 · 0 评论 -
微服务的介绍
单体应用VS微服务优势: 开发-东西都放在一起,找起来方便,结构复杂,点状,环状,星状 稳定-远程调用,网络,序列化 性能- 部署-一个应用部署几个不足: 中心化- 耦合-做重复的开发 学习成本 伸缩-瓶颈,有一块性能很差,整个服务都很差 持续交付微服务的介绍面向服务架构(SOA)类同 面向服务 松耦合 模块化 分布式计...原创 2018-04-20 16:58:43 · 268 阅读 · 0 评论