媳妇熬成婆,本网站在百度也有了站点信息

今日早上习惯性的在百度site了一下自己的网站,惊喜的发现本站在百度也有站点信息了,截图如下: 不仅仅如此,另外一个小站也有了站点信息: 众所周知,百度推出site显示一个站点的备案等信息的功能,也就几个月时间,应该是为了识别出稳定可靠,有价值,健康的网站,以便把那些临时的,违法的网站剔除掉。在之初只有大型的门户网站以及一些出名的网站才会显示站点信息,慢慢扩大范围,据猜测,只有建站年限、收录量、访问量等一些参数满足了百度的相关条件才会被收录。 本站建站有一年有余,虽然不是每天都有更新,但也是持续到现在,本站百度收录量从只收录首先到现在三四百页,访问量从个位数的PV发展到每天近200PV,我想这是让百度信任的首要条件,其次就是本站从建站初期就使用百度统计、后来加入了百度联盟广告,这也是贴近百度的一种方式,我的第二个站也被百度显示了站点信息,但是访问量并不大,想想可能就是用了百度统计,百度联盟广告的原因,或者是沾了第一个网站的光了。 写博客是我的个人爱好,也是为了分享,博客被更多的人看到,总是高兴的,谢谢大家浏览我的博客,也希望其中的内容能对你所帮助。

2015年1月10日 · 1 分钟

比较容易理解的bash多线程实现方式

一直在找一个bash实现的多线程,虽然这个方法看着不怎么高明,但是比那个fifo的写法,看着明白点。这里面也限制了最多线程数,类似于线程池,记录在此,以备后用。 #!/bin/bash MAX_THREAD_NUM=10; thread_pids=() #执行线程 function hello_thread(){ echo "print $1" sleep 5; } #检查是否有完成的线程,把pid剔除调 function check_current_thread(){ if [ ${#thread_pids[@]} -ne 0 ]; then for pid_idx in ${!thread_pids[*]}; do pid_val=${thread_pids[$pid_idx]} kill -s 0 $pid_val &>/dev/null || unset thread_pids[$pid_idx] done thread_pids=("${thread_pids[@]}") fi; } for i in {1..100}; do #如果当前执行的线程数少于10个,就加一个任务 if [ ${#thread_pids[@]} -lt $MAX_THREAD_NUM ]; then hello_thread $i & thread_pids=("${thread_pids[@]}" "$!"); else sleep 1; check_current_thread; fi done #等待最后的任务结束 while [ ${#thread_pids[@]} -ne 0 ]; do check_current_thread; sleep 1; done;

2015年1月8日 · 1 分钟

[新闻/转载]阻击小米,华为荣耀399元低端机曝光

昨日小米发布红米2,相当于小米2的造型再翻出来,加上个4G的噱头,1G的内存,着实没啥亮点。 售价699,在这个价格附近,在荣耀里面可以随便挑出几款手机与之对阵。 小米是低端路线走到底了,据悉后面要发布一款399元的机器。 为了阻击小米,华为荣耀积极应战,华为荣耀品牌走的就是中低端路线。 工信部上显示了一款编号20141110的华为手机,如果不出意外它就是那款应对小米399元的新机型。 传闻也是399元(也可能是398元哟) 从照片上看,这款机型属于荣耀系列,前黑后白,四周圆润。 据传闻这款机型: 支持TD-LTE/TD-SCDMA/GSM网络,支持双卡双待,内存为1GB,分辨率为1280*720,预计售价399元。另外前后置摄像头估计为500万和200万。 如果这款手机发布,估计是市面上价格最便宜的4G手机了吧。

2015年1月5日 · 1 分钟

cassandra 2.1.2版本的一个bug

最近从cassandra 2.0.8升级到2.1.2,在考察2.1.2的时候,发现了一个2.1.2版的一个bug,一直怀疑是java驱动的原因,后来发现只要满足特定条件,就可以重现,用cqlsh客户端也可以。 bug重现步骤: 首先创建keyspace space1和space2. 在space1里创建一个表table3 在space2里创建两个表table1,table2 在table3里插入一条记录 删除表table1 删除table3插入的那条记录 删除表table2 再根据主键,在tbale3里查询,会发现之前那条记录并未删除。 CREATE KEYSPACE space1 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 3}; CREATE TABLE space1.table3(a int, b int, c text,primary key(a,b)); CREATE KEYSPACE space2 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 3}; CREATE TABLE space2.table1(a int, b int, c int, primary key(a,b)); CREATE TABLE space2.table2(a int, b int, c int, primary key(a,b)); INSERT INTO space1.table3(a,b,c) VALUES(1,1,'1'); drop table space2.table1; DELETE FROM space1.table3 where a=1 and b=1; drop table space2.table2; select * from space1.table3 where a=1 and b=1; you will find that the row (a=1 and b=1) in space1.table3 is not deleted ...

2015年1月4日 · 1 分钟

slf4j、logback的使用

使用slf4j配合log4j打日志已经使用很长时间了,已经习惯了log4j的properties文件配置了。 具体参考:《slf4j、log4j 的使用》 虽然从log4j换到logback也不费劲,性能上提升在常规业务上也不是多么明显,但是作为处女座的我,还是想从log4j换到logback来。logback log4j 和slf4j都是同一作者。根据作者宣称的: slf4j的出现是为了替代commons-logging logback的出现是为了替代log4j,用作者的话,叫:“picking up where log4j leaves off" logback比log4j会有更高的性能,和更多的功能支持。 如果你之前是使用slf4j+log4j的组合打日志的话,你只要换个jar包和配置文件就可以了。 之前需要的jar包是: <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.7</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.7</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.16</version> </dependency> 现在需要的jar包是: <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.7</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.1.2</version> </dependency> logback-classic的pom会自动引入logback-core包 一般都是sl4j和log4j一起使用的,很少有人直接用log4j的logger打日志。如果你已经那样做了,也不必要修改代码。 只要引入log4j-over-slf4j的桥接包,删掉log4j包,以前log4j打印的日志,会自动桥接到slf4j进而使用logback的logger打印日志。 <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>1.7.7</version> </dependency> 配置文件使用XML格式配置:logback.xml 基本的示例: <!--60秒检查一次配置文件是否有修改,即时生效--> <configuration scan="true" scanPeriod="60 seconds" debug="false"> <property name="ROOT_LOG_PATH" value="/disk/log" /> <!--设置变量--> <appender name="STDOUT"> <!-- 打印到控制台的appender --> <encoder> <pattern>%d{HH:mm:ss.SSS}%-5level %logger{36}-%msg%n</pattern> </encoder> </appender> <appender name="FILE"> <!--打印到文件,20M滚一个,最多20个--> <file>test.log</file> <rollingPolicy> <fileNamePattern>${ROOT_LOG_PATH}/my.log.%i</fileNamePattern> <maxIndex>20</maxIndex> </rollingPolicy> <triggeringPolicy> <maxFileSize>20MB</maxFileSize> </triggeringPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS}%-5level %logger{36}-%msg%n</pattern> </encoder> </appender> <root level="DEBUG"> <!--根日志--> <appender-ref ref="FILE" /> </root> <!--设置包com.zhaoyanblog的日志级别, 设置是否也打印一份到它的父logger(这里是root)设置的appender里--> <logger name="com.zhaoyanblog" level="INFO" additivity="false"> <appender-ref ref="STDOUT"/> </logger> <!--设置包com.zhaoyanblog.test的日志级别--> <logger name="com.zhaoyanblog.test" level="ERROR" /> </configuration> 以上是对logback的简单配置,平常足够使用了,如果你已经习惯了log4j的properties形式的配置文件,想使用更高效的logback,又不想去学习logback的配置形式。logback为你这种懒人提供了一个log4j.properties在线自动转logback.xml的页面: http://logback.qos.ch/translator/

2015年1月3日 · 1 分钟

CES2015国际消费类电子产品展览会上荣耀可能会发布X2?

最近有媒体称,华为内部传出消息,将在CES2015国际消费类电子产品展览会发布X系列新机型X2 并透露了详细的主体参数: 分辨率 1920×1200 7英寸 麒麟925超八核处理器 3GB内存,5000mAh电池 甚至售价都给出了1999元 一切源于一个叫@包子玩机 的微博用户的爆料,他甚至给出了荣耀X2的金属骨架图: 荣耀X1是华为在巴塞罗那举办的2014 MWC大会上发布的一款7寸平板手机跨界大作,荣耀X1将面向全球市场。发布时间是去年2月,从发布时间,发布形式,面向的市场看,以及爆出的手机外形尺寸上看,这款即将在CES2015上展示的手机很有可能是荣耀X1的后续之作-荣耀X2. 荣耀X系列,属于大屏平板手机,适合喜欢看电影的用户使用,如果你喜欢用手机看电影,这款手机你应该有所期待了。。。

2014年12月31日 · 1 分钟

荣耀6 Plus值得买的三大理由

12月16日晚,华为荣耀终于发布了2014年最最旗舰机型-荣耀6 Plus。那么荣耀6 Plus有那些优势值得你去购买呢。本站长总结如下: 1、基本配置顶配 CPU 麒麟925 8核 华为最快的CPU 内存3G 5.5寸大屏,1080P 3600mA电池 2、珠圆玉润的外表 荣耀6的边框是塑料模拟金属,一直被用户诟病,这次荣耀6 Plus进行了一次完美升级。绝对金属边框,完美的弧度,不留遗憾,再加上78%的屏占比,美丽的翎羽后盖。这次荣耀6 Plus还是挺让人无可挑剔的。特别是白色,我觉得用珠圆玉润这个词形容荣耀6 Plus再合适不过了 3、双眼看世界 前置800万像素相机,完美自拍。后置一双800万像素的摄像头,拍照功能惊人,不但能达到1300像素的效果,而且可以在F0.95-16之间调节光圈值。此外双摄像头还完美解决了1300万像素摄像头突出的问题。 华为是一家科技创新性公司,这次荣耀6 Plus,包含了众多科技创新,例如后盖的材料,功耗的控制,发热的控制等等诸多细节。以上三点仅仅是用户最普遍感知的方面。当你真的入手荣耀6 Plus,你会发现荣耀6真的物超所值。

2014年12月17日 · 1 分钟

随荣耀6 Plus一起发布的还有一款荣耀电力猫

随荣耀6 Plus发布的已经证实有多款产品,除了荣耀盒子,还有一款荣耀电力猫 电力猫可以把电线当做信号传输线,可以解决wifi信号隔着几堵墙无法到达的问题。 从海报上看,荣耀电力猫小巧好用,并且有“黑”山妖、“蓝”精灵、“绿”毛怪、“白”胡子四种颜色可选。如果你家里有多个房子,而又不想扯更多的网线,这款产品绝对用得上。荣耀电力猫也将在12月16日荣耀发布会和大家见面。拭目以待哟~

2014年12月15日 · 1 分钟

伴随荣耀6 Plus,荣耀盒子将一同发布

荣耀新旗舰荣耀6 Plus,即将于12月16日发布,手机业界一向很少一场发布会只发布一款产品,这样隆重的年度发布会,肯定还会有其它新品一同发布,据悉荣耀盒子就是其中之一。 这一消息已经在@华为秘盒MediaQ 官方微博得到证实,并且于12月6号推出了“你吐槽我买单,这样的电视机顶盒不能忍” 赠送荣耀盒子的盖楼活动。 据媒体报道,这次华为推出的荣耀盒子,是与已经与广电授权牌照商—银河互联网电视有限公司合作,能够提供持续稳定的正版内容服务,荣耀盒子将使用华为自己的海思芯片,支持4K视频。这款4K盒子还将支持H.265视频编码标准。相比目前主流的H.264编码,H.265可以在同等画质下将视频体积大大压缩,更便于存储和流媒体播放,这也应该是这款盒子的核心卖点之一。

2014年12月14日 · 1 分钟

cassandra如何扩容和替换一个节点

增加一个节点和替换一个DOWN掉的节点,步骤都是一样的,只是启动参数不一样。 第一:准备一个新机器,cassandra的配置使用和集群中一个普通节点相同的配置。 第二:然后就可以启动了,增加一个节点,只要bin/cassandra 启动就可以了。 如果是替换一个节点(假设DOWN掉的节点ip=192.168.1.101),启动的时候,可以使用bin/cassandra -Dcassandra.replace_address=192.168.1.101来启动(只是第一次这样,以后就直接bin/cassandra启动就可以了) 第三:就是等待数据迁移,当你在其它机器上使用nodetool status看到新节点的状态变成UN状态的时候,就表示迁移完成了。你也可以在新节点上通过nodetool netstats查看数据迁移的进度。 注意:如果你的集群数据量很大,这个数据迁移的过程将会给集群带来很大的负载。你需要在启动新节点之前做两件事情: 1、关闭所有节点的压缩。 nodetool disableautocompaction 关闭自动压缩 nodetool stop COMPACTION 停止正在执行的压缩。 当新节点启动之后,也要执行nodetool disableautocompaction。 在数据迁移完毕之后,再放开即可nodetool enableautocompaction 2、限制所有节点数据迁移流量 ./nodetool setstreamthroughput 32 限制为32mbps 假设你的集群有10个机器,那么你的新节点的流量大约是32*10mbps。 你可以根据数据迁移的进度,完成的节点个数,慢慢调大这个值。

2014年12月6日 · 1 分钟

cassandra如何分离一个表或者一个keyspace到新集群

cassandra数据迁移有好多种方法,只要你的sstable文件没有丢失,这里只讲述两种常见易用的方式: 第一种方式:copy命令 使用方法:适用于数据量小的情况下。 使用方式: copy mykeyspace.mytable to ‘/home/db.csv’ 这样就成功的把表mytable以csv的格式导出到了db.csv文件。 然后再另外一个集群中,建一个一模一样的表,然后使用 copy app12345.mytable from ‘/home/db.csv’ 就把数据导入到了新的库中。 不过以上方式仅限于小数据量,当数据量一大,这个过程会持续很久,而且文件也会很大。 第二种方式:sstableloader工具。 在cassandra的bin目录下提供了一个sstableloader工具,这个工具专门用于把一个表的sstable文件导入到一个新的集群中。 假设你的表是mykeyspace.mytable。你的数据存一个10个节点组成的集群中,每个几点的数据都存在/disk/data1和/disk/data2目录下。 假设你的新集群的一个访问地址是192.168.2.1, 先在新集群建离相同名字的keyspace和表结构。 接下来你只要在老集群的每个节点执行下面的命令: bin/sstableloader -d 192.168.2.1 -u cassandra -pw cassandra -t 100 /disk/data1/mykeyspace/mytable bin/sstableloader -d 192.168.2.1 -u cassandra -pw cassandra -t 100 /disk/data2/mykeyspace/mytable 其中-u是 用户名 -pw是密码 -t是限制流量100M/bps 等所有节点执行完毕,你的表数据就成功导入到了新的集群中,当然只要你的机器io和网络条件允许,你可以多个节点并发执行。

2014年12月1日 · 1 分钟

2014年最最旗舰定为12月16号正式发布,为了纪念荣耀品牌独立一周年

荣耀最新旗舰机,不叫荣耀6X,改成荣耀6 Plus,并且改在12月16日发布,华为荣耀掌门人刘江峰微博称,这是为了纪念华为荣耀独立品牌一周年。 并且据华为荣耀产品领域部长@吴德周HW,微博宣称:“荣耀6 Plus的几个技术我们的消费者BG、2012实验室、海思等多个部门研究了几年,产生了一些专利,投入了很多科研人员、设备和经费,我相信这些科研产生的美会给你前所未有的快乐。同时,也希望回报能支持我们继续研发更美好的技术奉献大家。” 想必这一旗舰机相较于荣耀6,肯定有很多不同的改进点和新功能在当天展示,一直以为除了双摄像头之外,和荣耀6差不多,这样也让人有一点点期待了。

2014年11月26日 · 1 分钟

评估两个机器之间的传输性能

在工作中需要调查一处性能问题,初步怀疑是两个机器之间的网络传输性能有瓶颈,如何判断两个机器之间的传输性能呢,排除丢包等网络故障,那就剩下带宽了。 1、首先两个机器的网卡的网速限制: 如果你的是百兆网卡,即便机器之间用光缆链接,那最高带宽也就100M,查看网卡的网速: 执行ethtool eth0可以查看对应网卡的网速 Settings for eth0: Supported ports: [ FIBRE ] Supported link modes: 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 1000baseT/Full Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: FIBRE PHYAD: 2 Transceiver: internal Auto-negotiation: on Supports Wake-on: d Wake-on: d Link detected: yes 第二:即便两台机器都配有千兆网卡,如果中间有一个百兆交换机相连,他们的网速也只有100M。但是两台机器之间的链路复杂,还是需要测量得到两台机器的真实带宽,多平台带宽测试软件iperf(官方网站:https://iperf.fr/) linux x64下,直接下载可执行文件即可: wget –no-check-certificate https://iperf.fr/download/iperf_2.0.5/iperf_2.0.5-2_amd64 chmod +x iperf_2.0.5-2_amd64 sudo mv iperf_2.0.5-2_amd64 /usr/bin/iperf 在一台机器(ip=192.168.1.101)上执行:iperf -s -i 1 -w 1M 在另外一台机器上执行:iperf -c 192.168.1.1 -i 1 -w 1M 立马可以得到真实带宽: iperf -c 192.168.1.101 -i 1 -w 1M Client connecting to 192.168.1.101, TCP port 5001 TCP window size: 512 KByte (WARNING: requested 1.00 MByte) [ 3] local 192.168.1.102 port 12702 connected with 192.168.1.101 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0- 1.0 sec 113 MBytes 945 Mbits/sec [ 3] 1.0- 2.0 sec 112 MBytes 942 Mbits/sec [ 3] 2.0- 3.0 sec 112 MBytes 942 Mbits/sec [ 3] 3.0- 4.0 sec 112 MBytes 941 Mbits/sec [ 3] 4.0- 5.0 sec 112 MBytes 942 Mbits/sec [ 3] 5.0- 6.0 sec 112 MBytes 941 Mbits/sec [ 3] 6.0- 7.0 sec 112 MBytes 942 Mbits/sec [ 3] 7.0- 8.0 sec 112 MBytes 941 Mbits/sec [ 3] 8.0- 9.0 sec 112 MBytes 943 Mbits/sec [ 3] 9.0-10.0 sec 112 MBytes 942 Mbits/sec [ 3] 0.0-10.0 sec 1.10 GBytes 942 Mbits/sec

2014年11月20日 · 1 分钟

11月24日荣耀将发布年度旗舰

华为荣耀昨日12点以#荣耀年度旗舰#为话题,宣布2014年11月24日,荣耀将发布新旗舰。 可是华为荣耀今年已经发布了旗舰机型 荣耀6,那荣耀年度旗舰究竟是什么呢?加上广告词中的“带你探索无穷视界”,让人无限遐想 从图片上类似眼镜一样的标识,有人猜是带有双摄像头的荣耀6X,并有工信部注册图片曝光: 明天没大事,24号会有,说明这款号称年度旗舰的手机,肯定会让眼前一亮的感觉,让我们拭目以待。

2014年11月19日 · 1 分钟

[新闻转载]华为P8明年一季度正式开卖 已开始小批量试生产

华为P系列一直华为致力打造的精品系列,从华为P6的大受市场欢迎,到华为P7已经开始稳固华为市场份额,现在据消息传闻华为P8目前已经开始试产,有可能会配备麒麟930处理器,预计会在明年一月份正式发布。 尽管华为P7在今年五月份才正式发布,但随着国产手机竞争的日益加剧,华为P8的生产日程已被提前。根据网友在贴吧的爆料称,华为P8目前已经在小规模试产,官方方面对成品比较满意,但爆料者并未透露该机的具体发布时间,并且消息的真伪也仍需进一步证实。 但就现在的时间来看,华为P8在今年已经不可能推出了,对于十一月份开始试产,华为P8正式上市时间应该就在明年的一季度。按照以往的惯例,华为在每年年 初的CES消费电子展会上都有发布新机的习惯,如果华为P8确实将在明年一月份推出的话,那么则很有可能在CES2015展会上正式亮相 华为P8方面,自然会搭载自家引以为傲的麒麟系列处理器,据传闻来看,华为P8最吸引人的地方则是会搭载自家的海思kirin 930处理器,将会采用64位以及big.LIT LTE架构设计,并采用台积电最新的16nm FinFET工艺技术,但目前尚未有具体的规格被曝光。 随着国产手机价格逐渐水涨船高,华为P系列官方也是定位中高端手机市场,华为P8定价方面,根据此前泄露的华为明年7款新机图表中的信息显示,2999元很有可能! 当然,更昂贵的价格自然需要华为P8在外形设计,制作工艺以及硬件配置上都要有高的水准,因此预计诸如超窄边框设计,金属机身以及在摄像头拍照功能和效果方面的优化,或将成为华为P8的主要突破方向。 华为P8手机,你会期待吗?

2014年11月15日 · 1 分钟