自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

...

  • 博客(267)
  • 收藏
  • 关注

原创 tmp

    extern int shared;int main() { int a = 100; swap(&a, &shared);}   int shared = 1;void swap(int *a, int *b) { *a ^= *b ^= *a ^= *b;}     ...

2018-06-28 12:54:13 295

原创 虚拟内存

        参考认真分析mmap:是什么 为什么 怎么用从内核文件系统看文件读写过程

2018-06-07 13:52:23 249

原创 程序的加载和链接

   hello.h #ifndef HELLO_H #define HELLO_H void hello(const char *name); #endif //HELLO_H hello.c#include <stdio.h> void hello(const char *name) { printf("Hell...

2018-06-04 20:29:25 295

原创 C的例子

 一个C的例子#include <stdlib.h> #include <stdio.h>#include <string.h> //普通的search函数int search(int * arr, size_t size, int target) { for(int i=0;i<size;i++) { if(a...

2018-04-02 17:26:49 245

原创 Zookeeper

 ACID理论CAP理论 Consistency,Availability,Partition toleranceBASE理论 Basically Available基本可用,Soft state软状态,Eventually consistent最终一致性两阶段提交(存在中心节点同步阻塞,单点问题,脑裂,太过保守)三阶段提交Paxos算法,拜占庭将军问题 Pax...

2018-01-31 09:21:58 194

原创 加密算法

           参考抓包分析SSL/TLS连接建立过程数字签名与数字证书   

2017-12-29 14:33:27 95

原创 Go总结

        参考GO语言零基础入门资料整理Go语法指南Go语言中文网Go语言学习中文网 Go语言标准库例子GO标准库API Go博客列表Go中文博客Golang构建HTTP服务(一)--- net/http库源码笔记Golang构建HTTP服务(二)--- Handler,ServeMux与中间件《Go语言...

2017-11-22 10:25:11 169

原创 Linux内核--文件IO

   创建一个文件(100M大小),然后格式化(ext2格式),并挂载成一个分区(需要先建立/mnt/tmpmnt目录)dd if=/dev/zero of=ramrootfs.img bs=1k count=102400mke2fs -F -m 0 -i 2000 ramrootfs.imgmount -o loop -t ext2 ramrootfs.img /mn...

2017-05-27 13:52:08 122

原创 VLAN原理详解

 1.为什么需要VLAN1.1 什么是VLAN?VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。在此让我们先复习一下广播域的概念。广播域,指的是广播帧(目标MAC地址全部为1)所能传递到的范围,亦即能够直接通信的...

2017-05-22 18:01:25 139

原创 Linux 监控命令

 linux下监控命令top、uptime、free 统计相关命令stat、dstatifstat、iostatnetstat、nicstatmpstat、pidstat、vmstatlsof、tcpdump、sar 其他arp、arping、traceroutestracenethogs [eth1]   查看网络流量nslooku...

2017-05-09 13:20:18 438

原创 Hadoop技术内幕 深入解析MapReduce架构设计与实现原理

 Hadoop的一些重大改进1.append,HDFS支持追加写功能2.HDFS RAID在HDFS之上构建了一个新的分布式文件系统,可以用更少副本保持可用性3.Symlink 让HDFS支持符号链接4.Security 知道blockId就可以绕过namenode会有安全问题5.MRv1和MRv26.NameNode Federation,一个namenode会有...

2017-05-03 15:14:50 404

原创 高可用mysql

   infiniband网卡 memcache高可用就是双写或者多写来保证数据多备份开源工具如 memagent, MemcachedHA MySql读写分离方案MySQL-Proxy(官方) Amoeba for MySQL(第三方) Atlas(360) Cobar(Alibaba)通过程序实现读写分离  参考五大常见M...

2017-04-28 14:15:08 150

原创 MySql Innodb存储引擎--表

    表,页,段,记录页的格式分析  .......

2017-04-27 11:26:40 122

原创 MySql Innodb存储引擎--备份和优化

 备份的目的做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 备份需要考虑的问题可以容忍丢失多长时间的数据;恢复数据要在多长时间内完; 恢复的时候是否需要持续提供服务;恢复的对象,是整个库,多个表,还是单个库,单个表。 备份的类型1、根据是否需要数据库离线冷备(cold back...

2017-04-24 17:07:28 289

原创 MySql Innodb存储引擎--锁和事务

  lock和latch的比较latch 一般称为闩锁(轻量级的锁) 因为其要求锁定的时间非常短,若迟勋时间长,则应用性能非常差,在InnoDB存储引擎中,latch有可以分为mutex(互斥锁)和rwlock(读写锁)其目的用来保证并发线程操作临界资源的正确性,并且没有死锁检测的机制 lock的对象是事务,用来锁定的是数据库中的UI想,如表、页、行。并且一般lock对象仅...

2017-04-21 17:20:27 265

原创 MySql Innodb存储引擎--文件和索引

   MySql架构图   MySql文件类型参数文件,启动时候需要的参数日志文件,二进制文件(bin log),慢查询日志,查询日志,错误日志,重做日志(undo log)socket文件,使用域socket连接时候用的pid文件,进程的pid文件表结构文件,存储表结构的定义存储引擎文件,存放最终数据的   参数查询和修改...

2017-03-27 18:03:41 501

原创 MySql Innodb存储引擎--架构和引擎介绍

  Mysql架构图1 Connectors指的是不同语言中与SQL的交互 2 Management Serveices & Utilities: 系统管理和控制工具 3 Connection Pool: 连接池。管理缓冲用户连接,线程处理等需要缓存的需求 4 SQL Interface: SQL接口。接受用户的SQL命令,并且返回用户需要查...

2017-03-23 10:40:56 278

原创 Lisp 总结

 基本语法宏定义(define pi 3.14)(define hi "hello") 定义一个过程(define (add a b) (+ a b))(add 10 20) 一个序对(cons 1 2)(cons 1.1 "aa") 定义一个序对(define x (cons 1 2))(define y (cons 3 ...

2017-02-25 23:53:37 331

原创 计算机程序的构造和解释

   创建一个有理数(define (make-rat n d) (cons n d))      #定义一个分数(define (number x) (car x))                 #number获取一个分数的分子部分(define (denom x) (cdr x))                  #denom获取一个分数的分母部分 打...

2017-02-15 18:02:31 216

原创 Git 总结

  git命令git init创建一个git空仓库 git add <file>将文件保存到暂存区 git commit -m "..."将暂存区的内容提交到分支 git diff <file>比较文件差异 git status查看当前状态 git log查看历史 git reflog...

2017-02-04 15:17:13 85

原创 WebSocket总结

 1. websocket是什么Websocket是html5提出的一个协议规范,参考rfc6455。websocket约定了一个通信的规范,通过一个握手的机制,客户端(浏览器)和服务器(webserver)之间能建立一个类似tcp的连接,从而方便c-s之间的通信。在websocket出现之前,web交互一般是基于http协议的短连接或者长连接。WebSocket是为解决客户端...

2017-01-16 17:52:37 122

原创 NodeJS总结

  安装mysqlD:\nodejs>npm install mysqlD:\nodejs`-- [email protected]  +-- [email protected]  +-- [email protected]  | +-- [email protected]  | +-- [email protected]  | +-- isarra...

2016-12-26 10:39:12 140

原创 OAuth总结

    登录新浪微博授权过程url如下https://api.weibo.com/oauth2/authorize?client_id=2354958370&redirect_uri=跳转回去的urll&response_type=code&forcelogin=true参数信息client_id 2354958370forcelogi...

2016-12-22 16:15:09 94

原创 Memcached总结

 Slab Allocation机制:整理内存以便重复使用最近的memcached默认情况下采用了名为Slab Allocator的机制分配、管理内存。 在该机制出现以前,内存的分配是通过对所有记录简单地进行malloc和free来进行的。 但是,这种方式会导致内存碎片,加重操作系统内存管理器的负担,最坏的情况下, 会导致操作系统比memcached进程本身还慢。Slab Alloca...

2016-12-20 17:29:10 118

原创 AJAX跨域总结

  简介  跨域是我在日常面试中经常会问到的问题,这词在前端界出现的频率不低,主要原因还是由于安全限制(同源策略, 即JavaScript或Cookie只能访问同域下的内容),因为我们在日常的项目开发时会不可避免的需要进行跨域操作,所以跨域能力也算是前端工程师的基本功之一。  和大多数跨域的解决方案一样,JSONP也是我的选择,可是某天PM的需求变了,某功能需要改成支持POST...

2016-12-20 11:03:08 72

原创 javascript总结

     参考javascript一些例子1javascript一些例子2

2016-12-09 17:38:25 60

原创 AJAX总结

 简介AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveXObject)。XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网...

2016-12-09 15:21:39 114

原创 php总结

     参考php关键字列表深入理解php内核phpstorm+Xdebug断点调试PHPPHP7和HHVM的性能之争一步步入门编写PHP扩展xhprof介绍newrelic

2016-11-29 17:12:24 118

原创 scala-简介

   scala定义变量//不可变的变量val msg = "Hello, world!"//可变的变量,可以不用写变量类型,scala会自动推导val msg2: java.lang.String = "Hello again, world!"   scala函数基本构成定义函数如下def max(x: Int, y: Int): In...

2016-09-14 15:28:20 80

原创 Spark-编程和执行原理

  用一个例子来说明val rdd = sc.parallelize(List(('a',1),('a',2)))val rdd2 = sc.parallelize(List(('b',1),('b',2)))val x1 = rdd union rdd2val x2 = rdd union rdd2val x3 = rdd union rdd2val x4...

2016-09-13 16:28:18 86

原创 ElasticSearch-入门

  简介ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。我们建立一个网站或应用程序,并要添加搜索功能,令...

2016-09-12 13:42:22 85

原创 Spark-环境搭建

  搭建hadoop集群hadoop2.7.3 + spark1.6.1 + scala2.11.8 + jdk1.8.0_101下载hadoop2.7,修改$HADOOP_HOME/etc/hadoop下的hadoop-env.sh文件 export JAVA_HOME=/soft/jdk1.8.0_101  修改core-site.xml文件(这里讲将数据目...

2016-09-08 18:52:19 77

原创 REST简介

  名词解释REST(Representational State Transfer 表述性状态转移) 一种跨平台跨语言的架构风格REST式的Web服务   是REST在Web领域的实现JAX-RS  是REST在java领域的标准Jersey   是JAX-RS标准的参考实现     REST资源地址设计功能请求类型资源地址...

2016-08-26 23:03:35 153

原创 dubbo入门

 简介            大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡。 (1) 当服务越来越多时,服务URL配置管理变得非常困难,F5硬件负载均衡器的单点压力也越来越大。 此时需要一个服务注册中心,动态的注册和发现服务,使服...

2016-08-12 14:47:57 95

原创 Hadoop-DataNode分析

   HDFS主要流程客户端创建到namenode的文件与目录操作客户端会调用FileSystem实现也就是DistributedFileSystem的mkdir()函数,之后DistributedFileSystem会通过IPC调用namenode的mkdir()这个操作会持久化到日志中FSImage#saveFSImage(),之后返回创建目录只是客户端和nam...

2016-04-06 18:41:48 162

原创 破坏之王

  不同阶段DDos攻击事件的特点时期使用者目的时机目标探索期黑客个体兴趣和炫耀随意随意工具化政治宗教商业组织勒索竞争报复精确精确武器化国家网络战精确精确普及化群体组织表达主张受外部事件触发相关范围   知名僵尸网络1.ZeroAccess...

2016-03-30 21:44:44 203

原创 UNIX网络编程 密钥管理套接字

...

2015-12-09 13:28:30 148

原创 UNIX网络编程 路由套接字

  ..

2015-12-09 13:27:55 70

原创 UNIX网络编程 ioctl操作

..............

2015-12-09 13:25:58 95

原创 UNIX网络编程 非阻塞式I/O

.......

2015-12-09 13:25:22 106

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除