- 博客(90)
- 资源 (1)
- 收藏
- 关注
原创 clustershell
线上机器有多台,一台台copy文件、敲命令会疯掉,而且多次手动操作容易出错,就要用用clustershell!在自己的开发机上安装好,/etc/clustershell/groups里面新建swiftmc组,多台连号的机器可以使用数组方式,比如10.121.130.[80-89]可以直接添加10台机器,clustershell会自动解析。使用clush命令操作前先将自己开发机的key加到几台c...
2019-01-05 16:29:14
1159
原创 Linux定时任务crontab
格式要求如下:crontab -e就可以编辑定时任务,一般是将任务写在脚本里,比如我这里* * * * * /data/test/shell_test.sh脚本里简单输出一些信息到文件里:#!/bin/bashecho "good afternoon!" >> /data/test/test_crondecho &a
2018-09-07 09:37:20
304
原创 Neo4j Basic
neo4j服务开启指令: sudo neo4j start 报错:WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manual./usr/share/neo4j/bin/neo4j: line 410: /var/run/neo4j/neo4j.pid: No such f...
2018-06-11 11:17:40
366
原创 DeepLearning4J intro
入门前段时间就看过DL4J,没太在意,心想人工智能界编程语言的大佬非python莫属,但是前几天看美团技术沙龙又提到推荐系统的线上版本就是用的它,的确,在大数据量、高并发的今天,很多公司服务端开发语言都是Java,有需求就有供给,因而诞生了DL4J这样的项目。单纯从研究的角度,它没有什么新意,但是在工程应用环境中意义重大。按照官网快速入门指南 三条指令后构建完成用IDEA打开即可。 但是...
2018-03-10 22:36:36
356
原创 Tensorflow
安装 https://www.zhihu.com/question/49909565 https://segmentfault.com/a/1190000009068558用TensorBoard可以实现可视化,但是注意日志保存的路径不要有中文,否则读不到数据。...
2018-01-22 22:23:00
238
原创 Python Basic
安装Anaconda,默认包含大量科学计算包,省去自己安装的麻烦,还可以实现python2和python3的共存。 安装参考链接安装Anaconda2和3两个版本,命令行中输入python默认是进入python2,activate python3进入python3环境,deactivate退出python3环境。很多演示都是用jupyter notebook来做,进入ipynb文件所在目录,...
2017-12-25 20:58:06
606
原创 Go Basic
Go语言07年由Google推出,旨在解决多核网络编程问题,目前火热的Docker就是基于Go开发的,当然还有Kubernetes。相比Java等流行开发语言,golang在并发性、开发速度等方面做了诸多改进。 下面安装配置基础环境安装配置Go 我是在Windows10使用,下载Go语言zip安装包,解压到磁盘某一目录下,然后配置环境变量GOROOT,命令行下输入go version,显示:go
2017-12-18 20:07:35
265
原创 Nginx Basic
轻量级web服务器和负载均衡设备。更改默认监听端口修改http -> server -> listen,更改后面的端口号即可。
2017-12-14 20:03:41
390
原创 MapReduce
http://blog.youkuaiyun.com/zr459927180/article/details/51249177
2017-12-11 23:22:49
172
原创 分布式Tomcat session共享
tomcat官网: http://tomcat.apache.org/tomcat-8.0-doc/cluster-howto.html使用tomcat广播机制共享session不太好,推荐使用redis实现,redis用处还真是多。参考资料: http://bbs.itheima.com/forum.php?mod=viewthread&tid=369981&ordertype=2 http
2017-12-11 23:16:44
280
原创 java8新特性
现在java10都已经提上日程了,据说要加入类型推断等特性,不断在语言级别完善,再加上其背后强大的生态,Java的生命力还是非常顽强的。 历史的车轮滚滚向前,记得九月底Java9正式版退出,还没来得及试用呢,最近发现java8的好多特性都不太熟,真是惭愧,虽然实际工作中用到的不多,但是作为行走在时代前沿的程序猿,新东西是绝对不能错过的。参考资料: http://blog.youkuaiyun.com/hai
2017-12-11 21:17:43
233
原创 数据访问层:分库分表与读写分离
分库分表垂直切分 水平切分固定哈希 规则简单,但是扩容时不方便,涉及大量的数据迁移。 一致性哈希读写分离读写分离分担主库读的压力,但这里存在一个数据复制的问题。 这里有几种解决方案: 基于数据库的日志进行分库分表。 对数据做平滑迁移!很多数据库中间件都会提供读写分离、负载均衡、安全认证、连接池等功能。这里以百度的DBproxy中读写分离为例简单介绍: DBproxy为应用提供读写分离服
2017-12-10 16:18:24
748
原创 Load Balance
负载均衡分为软件负载均衡和硬件负载均衡,软负载均衡的代表是阿里章文嵩博士研发的LVS,硬负载均衡有F5,价格高昂,互联网自然要追求低成本,所以软负载均衡收到青睐,大致有:轮询法(round robin)轮询调度算法的原理是每一次把来自用户的请求轮流分配给内部中的服务器,从1开始,直到N(内部服务器个数),然后重新开始循环。算法的优点是其简洁性,它无需记录当前所有连接的状态,所以它是一种无状态调度。
2017-12-09 23:11:54
328
原创 Java Concurrency 3: 锁优化
关于锁优化jvm已经做了非常多的努力,参见JVM层面的锁优化。我们平时编程自然不能完全依赖于jvm,在应用角度也有一些锁的优化措施:减少锁持有的时间缩短持有锁的时间,从而降低冲突。只在必要时才同步,举例:public synchronized void syncMethod(){ othercode1(); mutexMethod(); othercode2();}这里只有
2017-12-09 21:38:54
270
原创 Maven & Gradle
都是Java非常常用的自动化构建工具。基本安装配置Maven配置本体仓库位置,Windows下默认给放到C盘了。 <localRepository>E:\LocalRepo</localRepository> 为加快jar包下载速度,配置阿里云镜像如下: <mirror> <id>loca
2017-12-08 17:37:43
238
原创 Java JVM 0: Basic
我们常说的JVM一般指的Sun的HotSpot VM,其具备热点探测功能,可将一个被频繁调用的方法或代码块标记为“热点代码”,然后通过内置的JIT(Just In Time Compiler)编译为本地机器指令。 除了HotSpot,市面上还有IBM J9VM,各大linux发行版预装的openjdk等,Java在中国最大的用户淘宝有基于openjdk深度定制的TaobaoVM,改写了大量的Hot
2017-12-06 21:49:19
233
原创 Java JVM 5: 认识OOM
OutOfMemoryError对于Java猿们来说自然不陌生,但工作中真碰到这样的问题未免头大,那为什么会内存溢出?碰到这样的问题该怎么办?下面简单探讨。 众所周知,Java数据区包括栈、堆、方法区(直接内存),堆是用来放对象的,栈是用来放线程私有的,而方法区是存放类信息的,那么根据Java内存区域不同可以将OOM原因大致分为:堆溢出一般来说大部分Java的内存溢出应该属于这种情况,程序分配大量
2017-12-04 21:54:47
286
原创 Algorithms:Reservoir Sampling
所谓蓄水池算法,参考资料: http://www.cnblogs.com/HappyAngel/archive/2011/02/07/1949762.html
2017-12-04 10:08:29
239
原创 分布式锁
https://www.cnblogs.com/PurpleDream/p/5559352.html http://www.cnblogs.com/PurpleDream/p/5573040.html
2017-11-29 04:41:30
169
原创 epoll/select/poll
http://blog.youkuaiyun.com/chengzi_comm/article/details/51220163
2017-11-29 03:43:36
222
原创 Design Pattern 5: Chain of Responsibility
概念: 使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合。将这些对象连城一条链,并沿着该条链传递请求,直到有对象处理它为止。责任链模式的核心在“链”上,“链”由多个处理者ConcreteHandler组成。 责任链模式融合了模板方法模式,每个实现类只要实现抽象类Handler的echo处理请求和getHanderLevel获得处理级别即可。public abstract cla
2017-11-29 02:02:08
187
原创 MySQL Design: 三大范式
参考资料: http://blog.youkuaiyun.com/fenglibing/article/details/1694036
2017-11-24 20:12:05
251
原创 Algorithms: DP
思路暴力搜索(递归)首先不要对递归心存偏见,虽然其在dp问题上时间复杂度很高,但是代码简洁,容易理解,递归方式在很多场合都是有大量应用的,不啻为一个“短小精悍”的工具,比如对于二叉树结构相关问题中。即使对于dp问题,如果能写出递归式,再将其优化成经典的dp也不难。 记忆化搜索暴力递归中涉及大量的重复计算,记忆化搜索就是将递归计算的状态存储起来,遇到计算过的状态直接返回即可,“以空间换时间”。记忆化搜
2017-11-23 21:09:29
311
原创 Java JVM 4: JMM
Java内存模型、指令重排等等 https://tech.meituan.com/java-memory-reordering.html
2017-11-20 19:59:04
273
原创 System Design
秒杀系统如何防止超卖 http://blog.youkuaiyun.com/maikelsong/article/details/53322942
2017-11-20 19:37:48
361
原创 Redis 1-Basic
安装CentOS下安装指令:wget http://download.redis.io/redis-stable.tar.gztar -zxvf redis-stable.tar.gz cd redis-stable/makemake test参考: 安装过程遇到的问题解决: http://blog.youkuaiyun.com/lexang1/article/details/52381949 h
2017-11-18 00:21:36
222
原创 Java JVM 2: 锁优化
JVM对锁的优化:偏向锁 使用-XX:+UseBiasedLocking参数开启,在竞争激烈的场合下意义不大,大量竞争会导致持有锁的线程不停的切换,锁很难保持在偏向模式。轻量级锁自旋锁 线程没有取得锁时不被挂起,执行一个空循环(即所谓自旋)。 对于锁占用时间短的并发线程有益,对于单线程锁占用时间长的并发程序造成资源浪费。锁消除锁膨胀
2017-11-17 16:48:29
230
原创 Java Concurrency 2: ThreadPool
线程池使用线程池的好处:降低资源消耗提高响应速度提高线程的可管理性ExecutorService 如果为一个任务创建一个线程,可直接使用Thread类;如果需要为多个任务创建线程,最好使用线程池。ThreadPoolExecutor参数: 先看看jdk源码中对参数的说明: /** * Creates a new {@code ThreadPoolExecutor} with
2017-11-06 23:32:16
227
原创 Design Pattern 6: Adapter Pattern
概念将一个类的接口变换成客户端所期待的另一种接口,从而使原因因接口不匹配而无法在一起工作的两个类能够在一起工作。 convert the interface of a class into another interface clients expect. Adapter lets classes work together that couldn’t otherwise because of i
2017-11-05 23:08:21
248
原创 Design Pattern 3: Factory Method && Abstract Factory Pattern
工厂方法概念定义一个用于创建对象的接口,让子类决定实例化哪一个类。 Define an interface for creating an object,but let subclasses decide which class to instantiate.Factory method lets a class defer instantiation to subclasses. 工厂方法
2017-11-05 22:47:46
197
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人