- 浏览: 2097509 次
- 性别:
- 来自: 北京
最新评论
-
伍大都督:
解释太到位了,感谢分享
理解Linux系统中的load average(图文版) -
rfjian123:
非常感谢,用你的方法解决了问题。
Server sent unexpected return value (403 Forbidden) in response to OPTIONS -
yuhaifei12:
今天遇到同样的问题了。设置的是每分钟执行一次。结果发现每分钟执 ...
解决Linux下crontab同一时间重复执行问题 -
BigBird2012:
想问一下,使用ExecutorService每次都要调用 sh ...
spring quartz使用多线程并发“陷阱” -
zhuqx1130:
有用,谢谢
解决Sublime Text 3中文显示乱码(tab中文方块)问题
文章列表
插入数据:
db.test.insert({name:'zs', count:5})db.test.insert({name:'zs', count:6})db.test.insert({name:'zs', count:7})db.test.insert({name:'ls', count:7})db.test.insert({name:'ls', count:2})
按照name进行分组:
db.runCommand({"group" : {
"ns":"test",
"key& ...
python日期函数笔记
- 博客分类:
- python
# -*- coding: utf-8 -*-
from datetime import datetime
import time
# 取当前时间,返回string类型
now_str = time.strftime("%Y-%m-%d %H:%M:%S")
print (type(now_str))
print now_str
print '---'
# 取当前时间,返回datetime类型
print (type(datetime.now()))
print datetime.now()
print '---' ...
mongodb数据修复
- 博客分类:
- mongodb
无法重启数据库,错误信息如下:
**************
old lock file: /data/db/mongod.lock. probably means unclean shutdown
recommend removing file and running --repair
see: http://dochub.mongodb.org/core/repair for more information
*************
# 修复数据库
mongod --repair --dbpath /data/db
#验证数据
db.{collecti ...
mongodb多机shard配置
- 博客分类:
- mongodb
配置服务
mongod --dbpath ~/dbs/config1/ --port 20001 --fork --logpath /tmp/mongodb/config.log --logappend
路由服务
mongos --configdb 192.168.0.5:20001 --port 54321 --fork --logpath /tmp/mongodb/route.log --logappend
数据库服务
/usr/local/mongodb/bin/mongod --fork --logpath /tmp/mongodb/db.log --l ...
show dbs
show collections
use {database}
db.company.insert({"name":"A", age:27})
db.company.find()
db
db.{collection}.drop()
#创建数据库
先use {new_DB},然后insert data就可以了
# 删除DB
use cc
db.dropDatabase()
# find
db.boys.find()
db.boys.find({age: {$gt:30}}, {name:1 ...
下面代码使用两种方式读取日志文件,一种是流方式,一种是内存映射:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.CharBuffer;
import java.nio.MappedByteBuffer;
impo ...
newFixedThreadPool
创建一个固定大小的线程池。
shutdown():用于关闭启动线程,如果不调用该语句,jvm不会关闭。
awaitTermination():用于等待子线程结束,再继续执行下面的代码。该例中我设置一直等着子线程结束。
public class Test {
public static void main(String[] args) throws IOException, InterruptedException {
ExecutorService service = Executors.newFixedThreadPo ...
Java异常处理的总结
- 博客分类:
- Java
前言
异常分为Checked/Unchecked,两种类型,前者集成自Exception,后者集成自RuntimeException。
异常处理机制的优势:将正常的代码与异常处理代码分离,
异常抛出的三个场景
编程错误导致异常: 如IndexOutOfBoundsException、NullPointerException ,出现这些异常通常由于编程错误导致
客户端代码导致异常: 如方法本来需要传入一个yyyymmdd的日期字符串,却传入了人名字符串
资源失败导致异常: 内存不足、网络连接失败、找不到要打开的文件等
最佳实践
1. 在设计方法的时 ...
UUID和MD5散列重复的几率
- 博客分类:
- Java
关于UUID重复几率:
每秒产生10亿笔UUID,100年后只产生一次重复的机率是50%。如果地球上每个人都各有6亿笔UUID,发生一次重复的机率是50%
MD5重复几率:
一般福利彩票的中头奖的机会,约一百万份之一,即1/10e6。而MD5重复几率相当1/10e22个一百万份之一。也就是说:相当于某人买了一亿亿亿次福彩,每次都中头奖的概率。
参考:
uuid:http://zh.wikipedia.org/wiki/UUID#.E9.9A.A8.E6.A9.9FUUID.E7.9A.84.E9.87.8D.E8.A4.87.E6.A9.9F.E7.8E.8 ...
系统环境:
Hbase:0.90.3
hive:0.7.0
hive 0.7.0自带的lib下包含文件“hbase-0.89.0-SNAPSHOT.jar”,我的hbase版本是0.90.3,首先拷贝hbase-0.90.3.jar到hive/lib下,然后删除“hbase-0.89.0-SNAPSHOT.jar”。
创建hive表、hbase表:
CREATE TABLE hbase_table_1(key int, value string)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHa ...
《Java Concurrency in Practice》学习笔记:
Q:Thread.sleep()方法什么时候触发InterruptedException?
A:线程执行start()方法启动后,当执行sleep()方法的时候,线程又执行了interrupt()方法,会触发InterruptedException()
public class MultiThreadTest extends Thread {
public static void main(String[] args) throws InterruptedException {
Syst ...
hadoop性能调优笔记
- 博客分类:
- hadoop
Hadoop调优
mapred.tasktracker.map.tasks.maximum
官方解释:The maximum number of map tasks that will be run simultaneously by a task tracker.
我的理解:一个tasktracker最多可以同时运行的map任务数量
默认值:2
优化值:mapred.tasktracker.map.tasks.maximum = cpu数量
cpu数量 = 服务器CPU总核数 / 每个CPU的核数服务器CPU总核数 = more /proc/cpui ...
问题
hive无法按照5分钟对日志分组
方案
hive UDF
实现步骤
创建UDF:①extends UDF ②重写evaluate方法
package com.xxx.udf;
import java.math.BigDecimal;
import org.apache.hadoop.hive.ql.exec.UDF;
public class UDFTrunc5min extends UDF {
/**
* truncate 5 minute
*
* @param timestamp " ...
故事背景:
hadoop任务分为map task和reduce task,当map task执行失败后会重试,超过重试次数(mapred.map.max.attempts指定,默认为4),整个job会失败,这是我们不想看到的。
解决办法:
hadoop提供配置参数“mapred.max.map.failures.percent”解决这个问题。如果一个Job有200个map task,该参数设置为5的话,则单个job最多允许10个map task(200 x 5% =10)失败,这是我想要的。
把下面配置放到mapred-site.xml文件中,重启jobtracker(hadoo ...
巧妙使用飞信机器人做Linux磁盘短信监控
- 博客分类:
- Linux
下载飞信机器人:http://bbs.it-adv.net/viewthread.php?tid=1081&extra=page%3D1
程序分为两个版本:windows和linux版本,都是由执行文件和类库两部分组成的
安装飞信机器人,以linux举例,将执行文件fetch和几个类库文件放到一个文件夹,就好了
编写磁盘容量监控shell脚本,其中“75”是磁盘已使用比例,超过这个值就发短信告警
#!/bin/bash
LD_LIBRARY_PATH=/opt/fetion/
export LD_LIBRARY_PATH
df -k|grep & ...