- 浏览: 108897 次
- 性别:
- 来自: 深圳
最新评论
-
xemp45:
好久木有更新了咧,wei 哥说你还是在这边办公额?
mybatis/Mysql常用命令 -
beck5859509:
wangxuehui 写道文章写的不错,希望多写写哈哈,一起学 ...
跟我一起学习C(指针篇1) -
wangxuehui:
文章写的不错,希望多写写
跟我一起学习C(指针篇1) -
beck5859509:
wangxuehui 写道即&p的值0x7fff654 ...
跟我一起学习C(指针篇1) -
wangxuehui:
即&p的值0x7fff65485a00修改为abc h ...
跟我一起学习C(指针篇1)
优秀文章转载
- 博客分类:
- 随笔
git常用命令
git clone 代码分支
git status 查看当前分支状态
本地和远程分支进行绑定
git checkout -b remotes/origin/xxxx-branch xxxx-branch
update代码前先进行stash
git stash
git pull
git stash pop
--提交代码--
git add . 添加修改的文件至index区、或者添加未追踪的文件至index区域
git commit -m "提交注释" 提交文件
--
---合并分支---先merge主干分支,发布上线后,再切换到主干分支,合并最新分支到主干
git merge --no-ff xxx-trunk
git checkout xxx-trunk
git merge --no-ff xxx-branch
--
--删除远程不存在的本地分支
git remote prune origin
--推送至远程分支--
git push origin 分支名:refs/for/分支名
--
---start--- changeId没有生成问题,版本回退再重新提交
git reset 提交版本号
git add .
git commit -m "xxxx"
--end---
<bean id="mappingMongoConverter"
class="org.springframework.data.mongodb.core.convert.MappingMongoConverter">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
<constructor-arg name="mappingContext" ref="mappingContext" />
<property name="typeMapper" ref="defaultMongoTypeMapper" />
</bean>
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
<constructor-arg name="mongoConverter" ref="mappingMongoConverter" />
</bean>
http://www.lxway.com/815510822.htm
springboot:
http://342104628.iteye.com/blog/2411854
mat的下载包:
MemoryAnalyzer-1.5.0.20150527-win32.win32.x86_64.zip
transacational的回滚的用法:
http://blog.csdn.net/bao19901210/article/details/41724355
1.applicationContext.xml中开启事务:
<tx:annotation-driven transaction-manager="transactionManager"/>
2.applicationContext-dao.xml中配置事务
<!-- 配置事务管理 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
3.配置切点:
<aop:config>
<aop:pointcut id="allServiceMethod" expression="execution(* com.xxx.api.services..*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="allServiceMethod" />
</aop:config>
4.配置切点的方法:
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name = "update*" propagation = "REQUIRED" />
<tx:method name = "insert" propagation = "REQUIRED"/>
<tx:method name = "del*" propagation = "REQUIRED" />
<tx:method name = "down*" propagation = "REQUIRED"/>
<tx:method name = "up*" propagation = "REQUIRED"/>
</tx:attributes>
</tx:advice>
spring 方法注解说明:
http://www.iteye.com/news/32657
http://blog.csdn.net/yhjyumi/article/details/48105331
@RequestMapping(value = "/xxx", method = RequestMethod.POST)
public @ResponseBody XXXModel doSomething(@RequestHeader(value = "type", required = false, defaultValue = "0") int type, @RequestBody RequestModel reqModel)
oautho2.0文章
原理:https://www.zhihu.com/question/19781476
例子:http://blog.csdn.net/jing12062011/article/details/78147306
linux查看进程文件数及配置:
http://www.blogjava.net/fly2008/archive/2009/08/26/292626.html
lsof -p pid
进程启动时间
ps -p PID -o lstart
1.ssh-keygen -t rsa
2.ssh-copy-id "push@1.1.1.1 -p 23"
sudo su - 切换root用户
sudo su -l nginx 切换到子用户
linux 循环打印文件:
function while_read_LINE_bottm(){
While read LINE
do
echo $LINE
done < $FILENAME
}
redis相关:
cluster info 打印集群的信息
cluster nodes 列出集群当前已知的所有节点(node),以及这些节点的相关信息
maven resources filter配置
http://zhaoshijie.iteye.com/blog/2094478
mysql抓包分析为明文:
tcpdump -i bond0 -s 65535 -x -nn -q -tttt port 3306 -c 200000 > 1.dmp
pt-query-digest --type tcpdump 1.dmp --limit 30 > report.log
步骤1:先抓二进制包 2.通过pt-query-digest转换二进制为明文数据
mybatis最后拼的查询语句可以查看此类:PreparedStatementHandler
MappedStatement
public BoundSql getBoundSql(Object parameterObject) {
BoundSql boundSql = sqlSource.getBoundSql(parameterObject);
spring与mybatis的集成原理。
1.spring启动一般分为web容器,
org.springframework.web.context.ContextLoaderListener
org.apache.commons.collections.CollectionUtils
tomcat源码:StandardWrapperValve ApplicationFilterChain(其实就是FilterChain,filter的doFilter执行完毕后,会在ApplicationFilterChain里面接着执行service方法)
Nagle算法逻辑就是:如果发送的包很小(不足MSS),又有包发给了对方对方还没回复说收到了,那我也不急着发,等前面的包回复收到了再发。这样可以优化带宽利用率(早些年带宽资源还是很宝贵的),Nagle算法也是用来优化改进tcp传输效率的。
tcpdump -X -vv -i eth0 src 10.244.42.49
tcpdump -X -vv -i eth0 src port 8688
tcpdump -i any port 1935 -p -s 0 -w capture.pcap
ip.src == 30.19.147.154 sony 30.19.147.42 小米
ip.dst == 30.19.144.209
tcpdump -i any port 1935 -p -s 0 -w /sdcard/capture1.pcap
tcpdump -X -vv -i eth0 dest
pgm -A -f sm_host 'grep "ali149061792539487" /home/admin/logs/xxxx/rpc/xxx-rpc-event.log' > warn.log
tcp网络定位:
route -n 查看路由表及网关信息
traceroute ip 查看到目标机器跳步几次
arp -a 查询IP对应的mac地址
sudo tcpdump -i eth0 arp
TCP建连接过程跟前面ping一样,只是把ping的icmp协议换成TCP协议,也是要先根据route,然后arp。
查看网卡的历史数据:
sar -f /var/log/sa/sa01 -n DEV -s 16:00:00 -e 20:00:00 |grep -E "IFACE|eth0"
查看端口被哪个服务给占用#netstat -ntlp |grep 1935
查看进程占用哪几个端口# netstat -nap | grep pid
网络定位:但sar也可以检测cpu、内存、IO等,以下是检测IO
sar -n DEV 2 100
youkit:
-agentpath:e:\software\youkit\youkit\install\bin\win64\yjpagent.dll
合并主分支
1.git pull origin master 拉主分支最新代码
2.git branch --set-upstream-to=origin/master master 本地master同远程master做关联
3.git checkout 本地分支
4.git merge master
git 缺少 changeId
1. git reset 76d1480247a65afddaf6d2c9a45da9e695888728 //缺少ID的 commitid
2. git commit --amend
或者使用
git checkout -b xxxx-branch remotes/origin/xxxx-branch //这样就把本地和远程分支进行绑定,后续只需要commit 后直接push即可
git 工作区只存留一个文件
git stash -p //此命令会进行交互界面,不需要暂存的选择n,需要暂存的选择y
回退之前的merge:
git reset --hard HEAD~
git merge --no-ff targetbranch 强制合并
删除同步的远程分支:
git remote prune origin
三个线程同时执行: CyclicBarrier or countdownlatch
concurrentHashMap:
1.6 分段加锁 segment方式
1.8 CAS + synchronized 底层依然采用数组+链表+红黑树
java cpu 高速缓存计算
sun.misc.Contended?
缓存行锁定及lock锁定,CAS实际是调用C的代码实现的,内部判断当前处理器核数,如果是多核,则加lock标识,进而使用缓存行的方式。
netty相关:
bytebuffer和bytebuf的区别:
http://blog.csdn.net/jeffleo/article/details/69230112
Netty之有效规避内存泄漏
http://calvin1978.blogcn.com/articles/netty-leak.html
Netty系列之Netty高性能之道
http://www.infoq.com/cn/articles/netty-high-performance?utm_source=infoq&utm_campaign=user_page&utm_medium=link
Netty:option和childOption参数设置说明
http://www.jianshu.com/p/0bff7c020af2
Netty系列之Netty可靠性分析
http://www.infoq.com/cn/articles/netty-reliability?utm_source=infoq&utm_campaign=user_page&utm_medium=link
Netty中的那些坑(上篇)
http://www.cnblogs.com/rainy-shurun/p/5213086.html
netty堆外内存
https://www.cnblogs.com/549294286/p/5169759.html
nginx-lua:
http://jinnianshilongnian.iteye.com/blog/2186448
python:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/
zookeeper之监听事件总结
http://www.itnose.net/detail/6445740.html
基于ZooKeeper的分布式Session实现
http://blog.csdn.net/jacktan/article/details/6112806
锁堆栈、同步、调度
http://www.iteye.com/topic/1129528
jvm常用命令
http://1358440610-qq-com.iteye.com/blog/2229370
Java基础之JVM运行机制
http://syyixin.iteye.com/blog/2183615
文章内容比较深,涉及到不少源码。
地址:http://it.deepinmind.com/
分布式服务框架zookeeper介绍。
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/
Linkedin工程师是如何优化他们的Java代码的
http://www.iteye.com/news/29960
使用JMeter对Tomcat进行压力测试与Tomcat性能调优
http://josh-persistence.iteye.com/blog/2164035
java编程中遇到的时区与时间问题总结
http://www.rigongyizu.com/java-timezone-time-issue-summary/
使用 RMI + ZooKeeper 实现远程调用框架
http://m635674608.iteye.com/blog/2165741
MySQL主从复制与读写分离
http://www.cnblogs.com/luckcs/articles/2543607.html
优化Java中的多态代码
http://www.iteye.com/news/30044
从零开始写个编译器吧系列
http://zhuanlan.zhihu.com/mosky/19878087
http://justjavac.iteye.com/blog/2173805
Spring FactoryBean源码浅析
http://blog.csdn.net/java2000_wl/article/details/7410714
Spring——jar包详解
http://qq-25012965.iteye.com/blog/2174895
实例讲解 SQL 注入攻击
http://www.iteye.com/news/30092
linux shell命令执行sql(mysql入门)
http://zhangzhaoaaa.iteye.com/blog/2175885
免密码登录
ssh-copy-id -i ~/.ssh/id_rsa.pub 10.10.10.10
ssh-copy-id -p 222 -i ~/.ssh/id_rsa.pub 10.10.10.10
程序员篇:8个开发技巧助你薪水更上一层楼
http://www.devstore.cn/new/newInfo/821.html
http://www.devstore.cn/new/newInfo/1011.html
常见gcc编译警告整理(开始)
http://blog.csdn.net/tietao/article/details/7244997
MYSQL学习
http://mysql.taobao.org/index.php
时间相减函数:
update xxx t set t.create_time = date_sub(curdate(),interval 44 day) where .....
插入的同时返回主键:
<insert id="insertSelective" parameterType="com.xxx">
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
select LAST_INSERT_ID()
</selectKey>
insert into xxxx_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="xxxId != null">
xxx_id,
</if>
<if test="xxxName != null">
xxx_name,
</if>
create_time,
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="xxxd != null">
#{xxxId,jdbcType=INTEGER},
</if>
<if test="xxxName != null">
#{xxxName,jdbcType=VARCHAR},
</if>
NOW(),
</trim>
</insert>
mysql按天来分组,查找某一列最大的值
SELECT DATE_FORMAT( t.record_date, '%Y-%m-%d' ) date_alias, MAX( `num` )
FROM xxx_table t
WHERE t.type =13
AND t.create_time > '2017-01-01 00:00:00'
GROUP BY date_alias
LIMIT 0 , 30
3.导出db1中的a1、a2表
注意导出指定表只能针对一个数据库进行导出,且导出的内容中和导出数据库也不一样,导出指定表的导出文本中没有创建数据库的判断语句,只有删除表-创建表-导入数据
mysqldump -uroot -proot --databases db1 --tables a1 a2 >/tmp/db1.sql
架构师之oracle--------分钟数相加最简便的方法
http://nannan408.iteye.com/blog/2178056
mysql安装
http://xupo.iteye.com/blog/1128671
http://yucang52555.iteye.com/blog/2178363
问题定位:
Caused by: java.io.IOException: Broken pipe的异常场景:
问题分析:
TCP服务端write数据时,收到SIGPIPE信号(连接已经终止)
场景:
1.TCP握手尚未结束时,连接已经close;
2.服务端收到一次read,但write了多次;
3.连接通道被占满,新连接被拒绝时,client中断了所有连接。
http://blog.csdn.net/zqz_zqz/article/details/52235479
broken pipe的字面意思是“管道破裂”。broken pip的原因是该管道的读端被关闭。
broken pipe最直接的意思是:写入端出现的时候,另一端却休息或退出了,因此造成没有及时取走管道中的数据,从而系统异常退出;
注意:在Unix系统下,如果send在等待协议传送数据时网络断开的话,调用send的进程会接收到一个SIGPIPE信号,进程对该信号的默认处理是进程终止。
hbase过滤查询:
http://aoyouzi.iteye.com/blog/2299623
偏向锁:
https://www.cnblogs.com/zhangfengshi/p/7068823.html
可以优化synchronized
jstat gcutil pid 10s 10 每隔10秒打印一次jvm堆信息
jstat -gcutil 29192 1s 10
idea下载:
http://confluence.jetbrains.com/display/IDEADEV/IDEA+2017.1+EAP
选择下载:ideaIU-2017.1.5.exe
idea license server address:输入下面的地址
http://idea.imsxm.com/
sublime3下载地址:
https://www.sublimetext.com/3
notepad++中文版
filezilla
xshell/xftp/xmanage
maven/jdk
mysql-workbench
picpick
postman:Postman-win64-4.9.3-Setup.exe 邮件中下载
protoc.exe 下载地址:https://github.com/google/protobuf/releases 使用方法
protoc --java_out=src/main/java src/main/resources/proto/xxx_payload.proto
sourcetree
rar/wrar_5.40.0.0_scp.exe
git 下载:https://git-scm.com/download/win
git配置 https://www.cnblogs.com/qiweb/p/6424809.html
反编译工具:jd-gui.exe
mat工具:
MemoryAnalyzer-1.5.0.20150527-win32.win32.x86_64
netty相关:
https://www.cnblogs.com/zemliu/p/4423786.html
https://www.gitbook.com/book/mcxiaoke/mqtt-cn/details
https://www.cnblogs.com/zhangyu1024/p/6141818.html
https://www.zhihu.com/question/42308970/answer/123620051
http://redisdoc.com/index.html redis命令
令牌桶-流量控制 http://www.cnblogs.com/ym65536/p/5041309.html
git rebase简介(高级篇)-cengku-ChinaUnix博客 http://blog.chinaunix.net/uid-27714502-id-3436706.html
git - 廖雪峰的官方网站 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013760174128707b935b0be6fc4fc6ace66c4f15618f8d000
深入剖析基于并发AQS的(独占锁)重入锁(ReetrantLock)及其Condition实现原理 - zejian的博客 - CSDN博客 http://blog.csdn.net/javazejian/article/details/75043422?locationNum=1&fps=1
Guava官方文档-RateLimiter类 | 并发编程网 – ifeve.com http://ifeve.com/guava-ratelimiter/
log4j2 RollingRandomAccessFile配置 - - ITeye博客 http://garssion.iteye.com/blog/2369929
Netty之有效规避内存泄漏 - Loull - 博客园
http://www.cnblogs.com/549294286/p/5168454.html
使用ssh-keygen和ssh-copy-id三步实现SSH无密码登录-xueliangfei-ChinaUnix博客
http://blog.chinaunix.net/uid-26284395-id-2949145.html
理解OAuth 2.0 - 阮一峰的网络日志
http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
使用ulimit 命令、/etc/security/limits.conf、proc 调整系统参数 - 简书 http://www.jianshu.com/p/23ee9db2a620
15分钟熟悉HBase Shell命令
http://blog.csdn.net/tanggao1314/article/details/51387560
io.netty.channel.ChannelOutboundBuffer$Entry
http://www.mamicode.com/info-detail-1215305.html
https://my.oschina.net/u/438393/blog/845300
https://www.jianshu.com/p/88fb6653ab22
mqtt
https://www.cnblogs.com/leeying/p/3795896.html
iswritable
http://www.bijishequ.com/detail/576753?p=
https://waylau.gitbooks.io/essential-netty-in-action/CORE%20FUNCTIONS/The%20ChannelHandler%20Family.html
netty水位:
https://blog.csdn.net/feiyingHiei/article/details/78735754
https://github.com/netty/netty/issues/5920
final class PooledDirectByteBuf extends PooledByteBuf<ByteBuffer>
static PooledDirectByteBuf newInstance(int maxCapacity) {
PooledDirectByteBuf buf = RECYCLER.get();
buf.setRefCnt(1);
buf.maxCapacity(maxCapacity);
return buf;
git clone 代码分支
git status 查看当前分支状态
本地和远程分支进行绑定
git checkout -b remotes/origin/xxxx-branch xxxx-branch
update代码前先进行stash
git stash
git pull
git stash pop
--提交代码--
git add . 添加修改的文件至index区、或者添加未追踪的文件至index区域
git commit -m "提交注释" 提交文件
--
---合并分支---先merge主干分支,发布上线后,再切换到主干分支,合并最新分支到主干
git merge --no-ff xxx-trunk
git checkout xxx-trunk
git merge --no-ff xxx-branch
--
--删除远程不存在的本地分支
git remote prune origin
--推送至远程分支--
git push origin 分支名:refs/for/分支名
--
---start--- changeId没有生成问题,版本回退再重新提交
git reset 提交版本号
git add .
git commit -m "xxxx"
--end---
<bean id="mappingMongoConverter"
class="org.springframework.data.mongodb.core.convert.MappingMongoConverter">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
<constructor-arg name="mappingContext" ref="mappingContext" />
<property name="typeMapper" ref="defaultMongoTypeMapper" />
</bean>
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
<constructor-arg name="mongoConverter" ref="mappingMongoConverter" />
</bean>
http://www.lxway.com/815510822.htm
springboot:
http://342104628.iteye.com/blog/2411854
mat的下载包:
MemoryAnalyzer-1.5.0.20150527-win32.win32.x86_64.zip
transacational的回滚的用法:
http://blog.csdn.net/bao19901210/article/details/41724355
1.applicationContext.xml中开启事务:
<tx:annotation-driven transaction-manager="transactionManager"/>
2.applicationContext-dao.xml中配置事务
<!-- 配置事务管理 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
3.配置切点:
<aop:config>
<aop:pointcut id="allServiceMethod" expression="execution(* com.xxx.api.services..*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="allServiceMethod" />
</aop:config>
4.配置切点的方法:
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name = "update*" propagation = "REQUIRED" />
<tx:method name = "insert" propagation = "REQUIRED"/>
<tx:method name = "del*" propagation = "REQUIRED" />
<tx:method name = "down*" propagation = "REQUIRED"/>
<tx:method name = "up*" propagation = "REQUIRED"/>
</tx:attributes>
</tx:advice>
spring 方法注解说明:
http://www.iteye.com/news/32657
http://blog.csdn.net/yhjyumi/article/details/48105331
@RequestMapping(value = "/xxx", method = RequestMethod.POST)
public @ResponseBody XXXModel doSomething(@RequestHeader(value = "type", required = false, defaultValue = "0") int type, @RequestBody RequestModel reqModel)
oautho2.0文章
原理:https://www.zhihu.com/question/19781476
例子:http://blog.csdn.net/jing12062011/article/details/78147306
linux查看进程文件数及配置:
http://www.blogjava.net/fly2008/archive/2009/08/26/292626.html
lsof -p pid
进程启动时间
ps -p PID -o lstart
1.ssh-keygen -t rsa
2.ssh-copy-id "push@1.1.1.1 -p 23"
sudo su - 切换root用户
sudo su -l nginx 切换到子用户
linux 循环打印文件:
function while_read_LINE_bottm(){
While read LINE
do
echo $LINE
done < $FILENAME
}
redis相关:
cluster info 打印集群的信息
cluster nodes 列出集群当前已知的所有节点(node),以及这些节点的相关信息
maven resources filter配置
http://zhaoshijie.iteye.com/blog/2094478
mysql抓包分析为明文:
tcpdump -i bond0 -s 65535 -x -nn -q -tttt port 3306 -c 200000 > 1.dmp
pt-query-digest --type tcpdump 1.dmp --limit 30 > report.log
步骤1:先抓二进制包 2.通过pt-query-digest转换二进制为明文数据
mybatis最后拼的查询语句可以查看此类:PreparedStatementHandler
MappedStatement
public BoundSql getBoundSql(Object parameterObject) {
BoundSql boundSql = sqlSource.getBoundSql(parameterObject);
spring与mybatis的集成原理。
1.spring启动一般分为web容器,
org.springframework.web.context.ContextLoaderListener
org.apache.commons.collections.CollectionUtils
tomcat源码:StandardWrapperValve ApplicationFilterChain(其实就是FilterChain,filter的doFilter执行完毕后,会在ApplicationFilterChain里面接着执行service方法)
Nagle算法逻辑就是:如果发送的包很小(不足MSS),又有包发给了对方对方还没回复说收到了,那我也不急着发,等前面的包回复收到了再发。这样可以优化带宽利用率(早些年带宽资源还是很宝贵的),Nagle算法也是用来优化改进tcp传输效率的。
tcpdump -X -vv -i eth0 src 10.244.42.49
tcpdump -X -vv -i eth0 src port 8688
tcpdump -i any port 1935 -p -s 0 -w capture.pcap
ip.src == 30.19.147.154 sony 30.19.147.42 小米
ip.dst == 30.19.144.209
tcpdump -i any port 1935 -p -s 0 -w /sdcard/capture1.pcap
tcpdump -X -vv -i eth0 dest
pgm -A -f sm_host 'grep "ali149061792539487" /home/admin/logs/xxxx/rpc/xxx-rpc-event.log' > warn.log
tcp网络定位:
route -n 查看路由表及网关信息
traceroute ip 查看到目标机器跳步几次
arp -a 查询IP对应的mac地址
sudo tcpdump -i eth0 arp
TCP建连接过程跟前面ping一样,只是把ping的icmp协议换成TCP协议,也是要先根据route,然后arp。
查看网卡的历史数据:
sar -f /var/log/sa/sa01 -n DEV -s 16:00:00 -e 20:00:00 |grep -E "IFACE|eth0"
查看端口被哪个服务给占用#netstat -ntlp |grep 1935
查看进程占用哪几个端口# netstat -nap | grep pid
网络定位:但sar也可以检测cpu、内存、IO等,以下是检测IO
sar -n DEV 2 100
youkit:
-agentpath:e:\software\youkit\youkit\install\bin\win64\yjpagent.dll
合并主分支
1.git pull origin master 拉主分支最新代码
2.git branch --set-upstream-to=origin/master master 本地master同远程master做关联
3.git checkout 本地分支
4.git merge master
git 缺少 changeId
1. git reset 76d1480247a65afddaf6d2c9a45da9e695888728 //缺少ID的 commitid
2. git commit --amend
或者使用
git checkout -b xxxx-branch remotes/origin/xxxx-branch //这样就把本地和远程分支进行绑定,后续只需要commit 后直接push即可
git 工作区只存留一个文件
git stash -p //此命令会进行交互界面,不需要暂存的选择n,需要暂存的选择y
回退之前的merge:
git reset --hard HEAD~
git merge --no-ff targetbranch 强制合并
删除同步的远程分支:
git remote prune origin
三个线程同时执行: CyclicBarrier or countdownlatch
concurrentHashMap:
1.6 分段加锁 segment方式
1.8 CAS + synchronized 底层依然采用数组+链表+红黑树
java cpu 高速缓存计算
sun.misc.Contended?
缓存行锁定及lock锁定,CAS实际是调用C的代码实现的,内部判断当前处理器核数,如果是多核,则加lock标识,进而使用缓存行的方式。
netty相关:
bytebuffer和bytebuf的区别:
http://blog.csdn.net/jeffleo/article/details/69230112
Netty之有效规避内存泄漏
http://calvin1978.blogcn.com/articles/netty-leak.html
Netty系列之Netty高性能之道
http://www.infoq.com/cn/articles/netty-high-performance?utm_source=infoq&utm_campaign=user_page&utm_medium=link
Netty:option和childOption参数设置说明
http://www.jianshu.com/p/0bff7c020af2
Netty系列之Netty可靠性分析
http://www.infoq.com/cn/articles/netty-reliability?utm_source=infoq&utm_campaign=user_page&utm_medium=link
Netty中的那些坑(上篇)
http://www.cnblogs.com/rainy-shurun/p/5213086.html
netty堆外内存
https://www.cnblogs.com/549294286/p/5169759.html
nginx-lua:
http://jinnianshilongnian.iteye.com/blog/2186448
python:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/
zookeeper之监听事件总结
http://www.itnose.net/detail/6445740.html
基于ZooKeeper的分布式Session实现
http://blog.csdn.net/jacktan/article/details/6112806
锁堆栈、同步、调度
http://www.iteye.com/topic/1129528
jvm常用命令
http://1358440610-qq-com.iteye.com/blog/2229370
Java基础之JVM运行机制
http://syyixin.iteye.com/blog/2183615
文章内容比较深,涉及到不少源码。
地址:http://it.deepinmind.com/
分布式服务框架zookeeper介绍。
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/
Linkedin工程师是如何优化他们的Java代码的
http://www.iteye.com/news/29960
使用JMeter对Tomcat进行压力测试与Tomcat性能调优
http://josh-persistence.iteye.com/blog/2164035
java编程中遇到的时区与时间问题总结
http://www.rigongyizu.com/java-timezone-time-issue-summary/
使用 RMI + ZooKeeper 实现远程调用框架
http://m635674608.iteye.com/blog/2165741
MySQL主从复制与读写分离
http://www.cnblogs.com/luckcs/articles/2543607.html
优化Java中的多态代码
http://www.iteye.com/news/30044
从零开始写个编译器吧系列
http://zhuanlan.zhihu.com/mosky/19878087
http://justjavac.iteye.com/blog/2173805
Spring FactoryBean源码浅析
http://blog.csdn.net/java2000_wl/article/details/7410714
Spring——jar包详解
http://qq-25012965.iteye.com/blog/2174895
实例讲解 SQL 注入攻击
http://www.iteye.com/news/30092
linux shell命令执行sql(mysql入门)
http://zhangzhaoaaa.iteye.com/blog/2175885
免密码登录
ssh-copy-id -i ~/.ssh/id_rsa.pub 10.10.10.10
ssh-copy-id -p 222 -i ~/.ssh/id_rsa.pub 10.10.10.10
程序员篇:8个开发技巧助你薪水更上一层楼
http://www.devstore.cn/new/newInfo/821.html
http://www.devstore.cn/new/newInfo/1011.html
常见gcc编译警告整理(开始)
http://blog.csdn.net/tietao/article/details/7244997
MYSQL学习
http://mysql.taobao.org/index.php
时间相减函数:
update xxx t set t.create_time = date_sub(curdate(),interval 44 day) where .....
插入的同时返回主键:
<insert id="insertSelective" parameterType="com.xxx">
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
select LAST_INSERT_ID()
</selectKey>
insert into xxxx_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="xxxId != null">
xxx_id,
</if>
<if test="xxxName != null">
xxx_name,
</if>
create_time,
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="xxxd != null">
#{xxxId,jdbcType=INTEGER},
</if>
<if test="xxxName != null">
#{xxxName,jdbcType=VARCHAR},
</if>
NOW(),
</trim>
</insert>
mysql按天来分组,查找某一列最大的值
SELECT DATE_FORMAT( t.record_date, '%Y-%m-%d' ) date_alias, MAX( `num` )
FROM xxx_table t
WHERE t.type =13
AND t.create_time > '2017-01-01 00:00:00'
GROUP BY date_alias
LIMIT 0 , 30
3.导出db1中的a1、a2表
注意导出指定表只能针对一个数据库进行导出,且导出的内容中和导出数据库也不一样,导出指定表的导出文本中没有创建数据库的判断语句,只有删除表-创建表-导入数据
mysqldump -uroot -proot --databases db1 --tables a1 a2 >/tmp/db1.sql
架构师之oracle--------分钟数相加最简便的方法
http://nannan408.iteye.com/blog/2178056
mysql安装
http://xupo.iteye.com/blog/1128671
http://yucang52555.iteye.com/blog/2178363
问题定位:
Caused by: java.io.IOException: Broken pipe的异常场景:
问题分析:
TCP服务端write数据时,收到SIGPIPE信号(连接已经终止)
场景:
1.TCP握手尚未结束时,连接已经close;
2.服务端收到一次read,但write了多次;
3.连接通道被占满,新连接被拒绝时,client中断了所有连接。
http://blog.csdn.net/zqz_zqz/article/details/52235479
broken pipe的字面意思是“管道破裂”。broken pip的原因是该管道的读端被关闭。
broken pipe最直接的意思是:写入端出现的时候,另一端却休息或退出了,因此造成没有及时取走管道中的数据,从而系统异常退出;
注意:在Unix系统下,如果send在等待协议传送数据时网络断开的话,调用send的进程会接收到一个SIGPIPE信号,进程对该信号的默认处理是进程终止。
hbase过滤查询:
http://aoyouzi.iteye.com/blog/2299623
偏向锁:
https://www.cnblogs.com/zhangfengshi/p/7068823.html
可以优化synchronized
jstat gcutil pid 10s 10 每隔10秒打印一次jvm堆信息
jstat -gcutil 29192 1s 10
idea下载:
http://confluence.jetbrains.com/display/IDEADEV/IDEA+2017.1+EAP
选择下载:ideaIU-2017.1.5.exe
idea license server address:输入下面的地址
http://idea.imsxm.com/
sublime3下载地址:
https://www.sublimetext.com/3
notepad++中文版
filezilla
xshell/xftp/xmanage
maven/jdk
mysql-workbench
picpick
postman:Postman-win64-4.9.3-Setup.exe 邮件中下载
protoc.exe 下载地址:https://github.com/google/protobuf/releases 使用方法
protoc --java_out=src/main/java src/main/resources/proto/xxx_payload.proto
sourcetree
rar/wrar_5.40.0.0_scp.exe
git 下载:https://git-scm.com/download/win
git配置 https://www.cnblogs.com/qiweb/p/6424809.html
反编译工具:jd-gui.exe
mat工具:
MemoryAnalyzer-1.5.0.20150527-win32.win32.x86_64
netty相关:
https://www.cnblogs.com/zemliu/p/4423786.html
https://www.gitbook.com/book/mcxiaoke/mqtt-cn/details
https://www.cnblogs.com/zhangyu1024/p/6141818.html
https://www.zhihu.com/question/42308970/answer/123620051
http://redisdoc.com/index.html redis命令
令牌桶-流量控制 http://www.cnblogs.com/ym65536/p/5041309.html
git rebase简介(高级篇)-cengku-ChinaUnix博客 http://blog.chinaunix.net/uid-27714502-id-3436706.html
git - 廖雪峰的官方网站 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013760174128707b935b0be6fc4fc6ace66c4f15618f8d000
深入剖析基于并发AQS的(独占锁)重入锁(ReetrantLock)及其Condition实现原理 - zejian的博客 - CSDN博客 http://blog.csdn.net/javazejian/article/details/75043422?locationNum=1&fps=1
Guava官方文档-RateLimiter类 | 并发编程网 – ifeve.com http://ifeve.com/guava-ratelimiter/
log4j2 RollingRandomAccessFile配置 - - ITeye博客 http://garssion.iteye.com/blog/2369929
Netty之有效规避内存泄漏 - Loull - 博客园
http://www.cnblogs.com/549294286/p/5168454.html
使用ssh-keygen和ssh-copy-id三步实现SSH无密码登录-xueliangfei-ChinaUnix博客
http://blog.chinaunix.net/uid-26284395-id-2949145.html
理解OAuth 2.0 - 阮一峰的网络日志
http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
使用ulimit 命令、/etc/security/limits.conf、proc 调整系统参数 - 简书 http://www.jianshu.com/p/23ee9db2a620
15分钟熟悉HBase Shell命令
http://blog.csdn.net/tanggao1314/article/details/51387560
io.netty.channel.ChannelOutboundBuffer$Entry
http://www.mamicode.com/info-detail-1215305.html
https://my.oschina.net/u/438393/blog/845300
https://www.jianshu.com/p/88fb6653ab22
mqtt
https://www.cnblogs.com/leeying/p/3795896.html
iswritable
http://www.bijishequ.com/detail/576753?p=
https://waylau.gitbooks.io/essential-netty-in-action/CORE%20FUNCTIONS/The%20ChannelHandler%20Family.html
netty水位:
https://blog.csdn.net/feiyingHiei/article/details/78735754
https://github.com/netty/netty/issues/5920
final class PooledDirectByteBuf extends PooledByteBuf<ByteBuffer>
static PooledDirectByteBuf newInstance(int maxCapacity) {
PooledDirectByteBuf buf = RECYCLER.get();
buf.setRefCnt(1);
buf.maxCapacity(maxCapacity);
return buf;
发表评论
-
ASM
2019-05-24 14:24 312/bin/zsh -c "$(curl -fsSL ... -
linux下如何查看nginx产生的core文件,并调试源码
2017-04-26 13:10 0背景:C下如果程序报段错误,无法定位问题。 在网上找了很多资料 ... -
windows和linux下如何搭建ftp服务
2015-01-15 11:28 1151引言:FTP作为项目中传输、共享文件的利器,是在工作中必须掌握 ... -
超常用的linux命令
2014-12-11 17:51 1192问:如何让新加文件(文件夹)自动继承父文件夹的权限。 答:li ... -
hadoop相关知识总结
2014-10-22 11:08 654在部署hadoop及运行过程中遇到的问题记录 ... -
如何设置ssh免密码登录
2014-10-09 16:46 798背景:linux下机器A如何直接登录到机器B 操作 ... -
如何设置ssh免密码登录
2014-10-09 16:41 0背景:linux下机器A直接登录到机器B 操作 ... -
单元测试编写原则及如何使用jmockit
2014-03-25 11:34 5645通常在写单元测试 ... -
今天终于发布了自己的校内网应用程序(图片浏览)
2010-06-13 11:41 1053感兴趣的同学可以访问这个地址,http://116.3.197 ...
相关推荐
:warning::warning::warning::warning::warning::warning::warning::warning::warning::warning:作者会每天推荐一篇优秀文章给大家每天会不定时更新,以下文章均是平时累计 转载请联系文章原作者。麻烦给小编一颗:...
该文章转载自:http://blog.csdn.NET/itas109 与2016-12-20日在其基础上修改了其中关串口卡死现象,添加十六进制与ASCII之间互转函数,觉得蛮好用的推荐给大家 如需转载请标明原始出处:...
2. 本精华手册收录的文章以看雪论坛原创文章为主,转帖性质的文章除非特别优秀的,一般不收录。『CrackMe◇ReverseMe』版块的文章本次未收录,将来专门出专辑。另外,一些工具源码也没收录,部分转到『工具开发与...
生成1024位RSA参数; 该篇文章是小弟转载的; 为了成为会员不得已而为之; 日后定要上载一片优秀源码!
代码都经过调试测试,确保可以运行!... 版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。 原文链接:https://blog.csdn.net/weixin_45329397/article/details/136884223
版权声明:本文为CSDN博主「Android毕业设计源码」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/u014388322/article/details/128738916
这是一篇优秀的文章,在多个网站疯狂转载,有幸在此上传,希望大家喜欢。我不是本文的作者,但是却被征服,写得太好了。
在探索Qt日志系统的深渊之前,让我们先来理解为什么这个话题如此重要。... 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 原文链接:https://blog.csdn.
于是便萌生了一个想法,自己把学习过程中查阅的优秀文章和开源项目做一个整理。同时也会分享一些自己发现能够提高工作效率的工具。希望这份资料能够给刚开始学习Android的开发者提供一点帮助,节省一些查找资料的...
每天一个知识点,可能是一个小小的技巧,心得,或者感悟,也可能是一个文章优秀文章的转载。 不一定每篇都还自己总结,自己一字一字的敲出来,但是要保证自己有得到到知识。 2016-12-02 11:05:34 一路过来一直在学习...
如果你需要转载本仓库的一些文章到自己的博客的话,记得注明记者地址。 关于文档开源对待说明 本文档是纯手敲,所以难免有错别字,期待你的发现和提出。 本文的核心知识点只是自己学习过程中的总结记录,很多知识...
的过程中的一些学习笔记,但是为了能够涉及到大部分后端学习所需的技术知识点我也会偶尔引用一些别人的优秀文章的链接。文档大部分内容都是笔者参考书籍以及自己的原创。少部分面试题回答参考了其他人已有答案,上面...
本仓库内容的定义、创建、更新维护均由本人发起与推进,在您引用本仓库内容、转载文章时,请在开头明显处标明作者及页面地址,谢谢; 目录 总榜 分榜 All Language # Repository Description Stars Language Updated...
本仓库内容的定义、创建、更新维护均由本人发起与推进,在您引用本仓库内容、转载文章时,请在开头明显处标明作者及页面地址,谢谢; 目录 总榜 分榜 All Language # Repository Description Stars Language Updated...
本仓库内容的定义、创建、更新维护均由本人发起与推进,在您引用本仓库内容、转载文章时,请在开头明显处标明作者及页面地址,谢谢; 目录 总榜 分榜 All Language # Repository Description Stars Language Updated...
欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com/ Android中文翻译组:http://goo.gl/6vJQl 正文 Android Debug Bridge Android调试桥接器,简称adb,是用于管理模拟器或真机状态的...
本站目的是记录技术学习笔记,分享技术学习笔记、技术文章、优秀资源。 若您认为侵犯你的个人知识产权,请联系邮箱(),我会第一时间和您进行沟通处理。 若你喜欢本站内容,欢迎转载,但请注明出处,且勿用于
前51条:文章翻译来源地址: 现在全部章节已经更新完成 :提供更好的在线阅读版本 : 提供更快的访问速度 写在最前面 本 repo 从来没有授权过任何公众号进行发布转载,所有公众号的引流都是公众号拥有者的自发行动,...