- 浏览: 45632 次
最新评论
文章列表
http://colobu.com
http://www.ibm.com
https://www.ibm.com/developerworks/cn/
http://jm.taobao.org/
http://www.gfsoso.com/
http://laoshandaoshi.so/?gws_rd=ssl
http://blog.jobbole.com/56256/
http://weekly.manong.io/
http://ju.outofmemory.cn
http://redisdoc.com/
http://www.tutorialspoint.com/ ...
JAVA7 FORK/JOIN
- 博客分类:
- JAVA
Fork/Join框架设计目标就是可以容易地将算法并行化、分治化,Fork/Join框架设计目标就是可以容易地将算法并行化、分治化。
ForkJoinPool类是ForkJoinTask实例的执行者,ForkJoinPool的主要任务就是”工作窃取”,其线程尝试发现和执行其他任务创建的子任务。ForkJoinTask实例与普通Java线程相比是非常轻量的。
ForkJoinTask有两个主要的方法:
fork () – 这个方法决定了ForkJoinTask的异步执行,凭借这个方法可以创建新的任务。
join () – 该方法负责在计算完成后返回结果,因此允许一个任务等待另一任 ...
一、简单排序
1.冒泡排序O(n^2)
两两比较,反序交换
public static int[] bubbleSort(int[] arr) {
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
arr[j] = arr[j] ^ arr[j+1];
arr[j+1] = arr[j] ^ arr[j+1];
arr[j] = a ...
根据某个关键字查找某个数据元素
1.线性查找
遍历所有元素,优化策略是减少比较次数,复杂度O(n)
2.有序表查找
1).二分查找O(logn)
public static int binarySearch(int k, int[] arr) {
int high = arr.length - 1;
int low = 0;
int mid;
while (lo ...
1.命令
db.runCommand({})
db.listCommands()
2.固定集合 db.createCollection({})
convertToCapped()
自然排序:根据插入顺序 sort({$natural: [1|-1]})
尾部游标
3.GridFS
不需要独立的文件存储架构、复制与分片保证HA和扩容、同一目录下可以存放大量文件、磁盘碎片
mongofile:./mongofiles --help
将大文件分解成多块,储存二进制信息
fs.chunks集合存储分块信息和元信息
4.服务器端脚本
db.eval(js)
储存js: ...
1.与关系型数据库(MySQL)的对比
document(文档)<-> 一行记录
collection(集合) <-> Table(表)
database(数据库)<-> database
2.crud操作
创建
> user = {'name': 'sosop', 'age': 18, 'gender': 'male'}
{ "name" : "sosop", "age" : 18, "gender" : "male" }
...
1.性能优化指标
预期吞吐量、预期响应延迟、最大并发数、并发数最大时可接受的吞吐量和延迟、最坏延迟、垃圾收集对延迟的影响
2.性能分析的方法:自顶向下、自底向上
3.操作系统性能监控
1)cpu使用率:vmstat top
监控 ...
1. 一般轮询算法
服务器类
package com.sosop.roundRobin;
public class Server {
private String ip;
private int weight;
public Server(String ip) {
super();
this.ip = ip;
}
public Server(String ip, int weight) {
this.ip = ip;
this.weight = weight;
}
public String getIp() ...
1.shell
BEGIN{time=systime()}
{
if($3 ~ /^\[GC/) {
gsub(/.*/, "", $1)
gsub(/.*/, "", $2)
gsub(/.*/, "[GC", $3)
}
# print $0 >> "gc_fmt_"strftime("%Y-%m-%d", time)".log"
print $0 ...
一、基础
1.导入: import module from module_name import someone
from __future__ import division 不用整除,如果需要整除 //
2.获取输入:input(tip) raw_input(tip)
3.pow(x, y, z): (x ** y) % z
abs(x): |x|, round(x): 四舍五入
模块: import math
int(x)
复数导入模块cmath
4.#! /usr/bin/python
5.字符串表示
str: 把值转换成合理的字符串
repr ...
1.优化考虑
sql及索引优化、表结构、系统配置、硬件
2.SQL优化
开启慢查询日志:slow_query_log log_queries_not_using_indexes long_query_time
使用mysqldumpslow或pt-query-digest
找到具体SQL后,使用执行计划explain进行分析
SQL优化: count max等函数的优化,子查询用join优化,group by优化,limit查询优化,具体问题具体分析,增加些过滤条件
3.索引的优化
哪些列建索引: where, group by, order by, on
...
1. 表结构
#!/bin/bashPATH=/usr/local/rvm/bin:/opt/mysql/server-5.6/bin:/usr/java/jdk1.7.0_45/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binname=$1pass=$2host=$3db=$4now=`date +%Y-%m-%d`mysqldump -u$name -p$pass -h$host -d --add-drop-table $db > ./"structure_"$now".s ...
1.堆
-Xms:xxm 最小
-Xmx:xxm 最大
-XX:+HeapDumpOnOutOfMemoryError 出现内存溢出情况转存快照
-Xmn:young
-XX:SurvivorRatio=8
-XX:InitialSurvivorRatio=8
-XX:+UseAdaptiveSizePolicy
-XX:MaxTenuringThreshold=20
2.栈
-Xss128k
3.方法区(永久代)
-XX:PermSize=xxm -XX:PermMaxSize=xxm
4.直接内存
-XX:MaxDirectMemor ...
1.git config
/etc/gitconfig --system
~/.gitconfig --global
.git/config
git config --list
2.git init
git clone url
.gitignore
git add git status git diff git diff --cache git commit
git rm git rm --cache git mv from to
git log -p -times git log --st ...
一、maven中的依赖
1.除了坐标元素外,还有以下元素
type: 类型jar war
scope: 依赖范围 compile编译、测试、运行(默认) test(测试) provided(编译、测试) runtime(测试、运行)system import
optional:依赖是否可选 true 依赖此项目的项目不会依赖声明为true的项目
exclutions:排除依赖
2.依赖原则
最短路径和第一声明优先
3.排除依赖<exclutions>
<exclution>
<groupId ...