- 浏览: 159837 次
- 性别:
- 来自: 北京
最新评论
文章列表
odelf通过搜索在线开源平台Github, Bitbucket, Google Code, Codeplex, Sourceforge, Fedora Projec的项目源码,帮开发者从中找出已有的匹配关键字的变量名。这个搜索服务支持直接搜索中文。codeif支持中文查询,输入中文意思,codeif可以根据需要查询尽可能满足需要的结果,并展示与查询结果相关的支持各种编程语言的代码片段以及代码库。
http://unbug.github.io/codelf/
select * from course c force index (索引名称) where c.start_time>'2017-01-20'
CREATE PROCEDURE `test`.`new_procedure` ()
BEGIN
-- 需要定义接收游标数据的变量
DECLARE a CHAR(16);
-- 游标
DECLARE cur CURSOR FOR SELECT i FROM test.t;
-- 遍历数据结束标志
DECLARE done INT DEFAULT FALSE;
-- 将结束标志绑定到游标
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
-- 打开游标
OPEN cur;
...
查看linux中的TCP连接数
- 博客分类:
- linux
一、查看哪些IP连接本机
netstat -an
二、查看TCP连接数
1)统计80端口连接数
netstat -nat|grep -i "80"|wc -l
2)统计httpd协议连接数
ps -ef|grep httpd|wc -l
3)、统计已连接上的,状态为“established
netstat -na|grep ESTABLISHED|wc -l
4)、查出哪个IP地址连接最多,将其封了.
netstat -na|grep ESTABLISHED|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort - ...
引用
概述
所谓知已知彼,百战不殆,在开始详细介绍实战中的抢购秒杀系统时,我们了解一些抢购秒杀系统系统面临的尴尬与难点。另外需要说明一点,下面的内容都是在工作中慢慢总结得来,我们团队也是慢慢摸着石头过河 ...
groupId:项目或者组织者的唯一标识
artifactid:项目的通用名称
version:项目版本号
packaging:打包机制:pom,jar,maven-plugin,ejb,war,ear,rar,par
name:描述名称
url:应该是只是写明开发团队的网站,无关紧要,可选
classifer:分类
其中groupId,artifactId,version,packaging这四项组成了项目的唯一坐标。一般情况下,前面三项就可以组成项目的唯一坐标了
依赖:
<dependencies>
<dependency>
< ...
maven 总体讲解:
pom文件介绍:引用
pom作为项目对象模型,使用xml文件表示maven项目。使用pom.xml文件来实现。
主要描述了项目:包括配置文件,开发者需要遵循的规则。缺陷管理系统,组织和licenses,项目的url,项目的依赖性,以及其他所有的项目相关因素。
<project>
<modelVersion>4.0.0</modelVersion>
<!--maven2.0必须是这样写,现在是maven2唯一支持的版本-->
<!-- 基础设置 -->
<groupId>. ...
1、compile 编译范围。 默认的依赖范围,如果没有填写,按照该编译范围。编译范围依赖在所有的classpath 中,同时他们也会被打包。
2、provided 已提供范围的依赖。provided依赖只有在jdk或者一个容器中已经提供该依赖之后,才启用。例如we容器的servlet,是不会打包到项目war包中,只是在编译classpath时才会使用。它们不是传递性的,也不会被打包
3、runtime 运行时范围。只有在运行时或者test时需要。在编译时不需要。
例如:可能在编译的时候只需要JDBC API JAR,而只有在运行的时候才需要JDBC驱动实
现。
3、test 测试范围: ...
问题表现:如果consumer-A异步调用provider-B,而provider-B本身又调用了provider-C。当provider-B调用provider-C时,会变成异步。
问题原因:是否异步调用取决于RpcContext中async的值,其次才是服务本身的配置。当A调用B时,会把async=true传给B的RpcContext;B调用C时,虽然服务本身async=false,但RpcContext中async=true,自然也就成了异步调用
代码分析:
客户端和服务端通信,配置使用netty进行网络传输,通过
NettyHandler进行具体的消息收发操作,所以从此入手进行源码分 ...
JAVA 实现:
package io.github.id;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 第一位为未使用(实际上也可作为long的符号位),接下来的41位为毫秒级时间,然后5位datacenter标识位,</br>
* 5位机器ID(并不算标识符,实际是为线程标识),然后12位该毫秒内的当前毫秒内的计数,加起来刚好64位,为一个Long型。
* 0---0000000000 0000000000 0000000000 0000000000 0 --- 000 ...
Twitter-Snowflake算法产生的背景相当简单,为了满足Twitter每秒上万条消息的请求,每条消息都必须分配一条唯一的id,这些id还需要一些大致的顺序(方便客户端排序),并且在分布式系统中不同机器产生的id必须不同。
Snowflake算法核心
把时间戳,工作机器id,序列号组合在一起。
snowflake-64bit
除了最高位bit标记为不可用以外,其余三组bit占位均可浮动,看具体的业务需求而定。默认情况下41bit的时间戳可以支持该算法使用到2082年,10bit的工作机器id可以支持1023台机器,序列号支持1毫秒产生4095个自增序列id。下文会具体分析。
Sn ...
引用
hash(散列、杂凑)函数,是将任意长度的数据映射到固定长度的域上。
即将一段数据M进行杂糅,然后输出一段数据h。作为他的数据特征(指纹)
即无论m多长,输出的h的长度是固定的
采取的原理:
将M分成128为,将每一位进行hash计算,用不同的方法进行迭代(例如:前一位的hash值与后一位的hash值进行异或)。如果不够128位,使用0或者1进行补位。算法中约定好就可以了。
/**
* Hash算法大全<br>
* 推荐使用FNV1算法
* @algorithm None
* @author Goodzzp 2006-11-20
* @lastEdit Goodzzp 2006-11-20
* @editDetail Create
*/
public class HashAlgorithms
{
/**
* 加法hash
* @param key 字符串
* @param prime 一个质数
* @return hash结果
*/
public s ...
原型模式-对象的克隆:
引用
浅克隆ShallowClone和深度克隆(DeepClone)
按照java数据类型: 基本类型(值类型)和引用类型(对象类型)
值类型包括int、double、byte、boolean、char等简单数据类型,引用类型包括类、接口、数组等复杂类型。
浅克隆值 基本类型能够进行复制,而对象引用复制的是指针。
在Java语言中,通过覆盖Object类的clone()方法可以实现浅克隆
浅克隆
//工作周报WeeklyLog
class WeeklyLog implements Cloneable
{
//为了简化设计和实现,假设一份工作周报中 ...
Initialization Demand Holder (IoDH) 通过匿名内部类的方式,屏蔽饿汉模式的资源占用问题及懒汉模式双重锁安全的性能问题
public class Singleton{
private Singleton() {
}
private static class HolderClass(){
private final static Singleton instance = new Singleton();
}
public static Singleton getIn ...