迷途知返

谦虚

排序:
默认
按更新时间
按访问量

对CSDN十分失望,现决定废弃该空间

Fault tolerance 我们期望服务能不受故障影响持续运行 可用性:在一些类型的故障发生时仍然可运行 强一致:从客户端角度看就像是一个单机服务

2017-11-30 12:43:32

阅读数:73

评论数:0

2017 6.824学习笔记 Lecture 2: RPC and threads

线程 线程是非常有用的构建工具 再Go中线程称为goroutines,其他语言中叫做线程 他们通常比较棘手 为什么使用线程? 允许利用并发,这在分布式系统中很自然的体现出来 再I/O并发中,允许在等待一个IO响应时,处理下一个请求 多线程可以平行运行在多核上 Thread = “thread of...

2017-11-19 17:23:27

阅读数:105

评论数:0

2017 6.824学习笔记 Lecture 1: Introduction

什么是分布式系统? 多个计算机进行协作 大规模数据库,P2P文件共享,MR,DNS等等 许多重要的基础设施是分布式的 为什么要使用分布式? 连接物理隔离的实体 通过隔离取得安全性 通过副本机制容忍故障 可水平扩展资源提高生产力 实现中的困难? 许多并发问题 处理局部故障 难以实现理论性能 主题关于...

2017-11-12 17:02:41

阅读数:187

评论数:0

go的内存模型

关于channel 对一个channel的发送操作 happens before 相应channel的接收操作完成 (channel带缓存) 关闭一个channel happens-before 从该Channel接收到最后的返回值0 不带缓冲的channel的接收操作 happens-befor...

2017-10-18 19:27:06

阅读数:114

评论数:0

APUE 进程环境

本文使用golang的syscall和os 1.main函数 main是程序的入口,golang中也亦是如此 启动一个程序时启动例程负责从内核获取命令行参数和环境变量,维护到程序的内存布局中(后文描述) 2.exit //import os func Exit(code int) 使...

2017-09-28 23:11:48

阅读数:86

评论数:0

实现了一个golang周期任务调度包

drumstickImplement crond by Golang https://github.com/openex27/drumstick鼓槌(鸡腿),golang定时任务包功能特性: 1.提供时间补偿机制,避免周期任务调度中时间损耗累计导致的长期使用后产生任务滞后现象 2.参数可传入自定...

2017-09-11 15:46:56

阅读数:234

评论数:0

使用Go实现了一个ping命令

注意差错校验CheckSum在总字节为奇数时,需要将最后一个byte左移8位凑成16位 在操作binary时注意网络字节序问题 github地址 https://github.com/openex27/Ping/blob/master/Ping.go package mainimport ( ...

2017-09-06 17:48:17

阅读数:369

评论数:0

APUE 2 文件和目录

本文代码实现采用golang的syscall包,其通常会包装一层系统调用不过大体相似 1.文件属性结构 Stat_t文件的类型 文件类型 描述 普通文件 可能是文本或二进制 目录文件 包含该目录内的文件名,和有关这些文件信息的指针 块特殊文件 提供对设备带缓冲的访问 ...

2017-08-31 15:26:49

阅读数:71

评论数:0

APUE 1 文件I/O

本章讨论不带缓冲的I/O, 代码实现采用golang的syscall包,其通常会包装一层系统调用不过大体相似 1.文件描述符(FD) 文件描述符是一个非负的整数,内核通过该描述符对文件进行引用,进行与文件相关的操作 open、openat、creat函数会返回文件描述符 已打开文件在内...

2017-08-22 23:09:35

阅读数:138

评论数:0

golang 常量的iota使用

在常量定义中,iota可以方便的迭代一个值从0以步长1递增,0,1,2,3,4,5… 本例以文件大小的格式2的10次方进位一次为依据,将KB为1左移10位,MB左移20位。。。package mainimport ( "fmt" )type ByteSize floa...

2017-08-22 12:09:40

阅读数:603

评论数:0

数理逻辑基础概念

2017-07-16 23:01:14

阅读数:99

评论数:0

离散数学基础-数理逻辑

命题: 1.确定元素 2.是一个判断 3.陈述句

2017-06-09 13:01:29

阅读数:502

评论数:0

Python源码学习笔记 5 字典对象

Python中对于字典的实现是根据key进行hash生成散列表,算法为“开放定址法” 1.PyDictEntry 字典中每一个kv对,实际上就是一个entry对象 [dictobject.h] typedef struct { Py_ssize_t me_hash; /...

2017-04-23 23:27:23

阅读数:228

评论数:0

Python源码学习笔记 4 列表对象

1.PyListObject [listobject.h] typedef struct { PyObject_VAR_HEAD //其中的obsize记录实际使用内存的对象数量 PyObject **ob_item; //指向列表存储空间中第一个元素地址 int all...

2017-04-17 20:47:37

阅读数:122

评论数:0

Python源码学习笔记 3 字符串对象

1.PyStringObjecttypedef struct { PyObject_VAR_HEAD long ob_shash; //存储字符串hash值,初始为-1 int ob_sstate; //表明该字符串是否经过intend处理 char ob_sval...

2017-04-13 16:59:54

阅读数:158

评论数:0

Python源码学习笔记 2 整数对象

Python中的整数类型是不可变对象,为了提高python运行效率,内部实现了小整数对象池(数组实现),和普通整数缓冲池(单链表实现)。1.PyIntObject 该结构仅适用2.5版本,该版本下数字长度大于long型时,对象类型会转变为PyLongObject,后续版本整合为PyIntObj...

2017-04-11 00:13:30

阅读数:215

评论数:0

Python源码学习笔记 1 简述python对象

声明:本系列为本人阅读《python源码剖析》的读书笔记,如有侵权请及时告知本人openex@qq.com 1.PyObject在python中一切都是对象,而所有的对象都有相同的部分,便是PyObject 通常情况下PyObject对象中存在两个成员:引用计数和对象类型[object.h] t...

2017-04-09 22:02:54

阅读数:117

评论数:0

linux系统调用笔记

本笔记仅供个人学习所用,部分内容转自互联网,如有侵犯原创权益请及时联系本人 1.sendfile(int out_fd, int in_fd, off_t *offset, size_t count) 解决在同一系统,两个文件描述符之间传递数据性能问题,去掉不比较的复制和上下文切换,完全在内核...

2017-03-12 23:46:59

阅读数:100

评论数:0

python进阶-数据结构和算法

本文内容整理自《Python Cookbook》,仅用作本人学习笔记,若侵犯原著权益请尽快联系本人。 1.将序列分解为单独变量 理解多重赋值 丢弃元素方法 data = ('Kevin', 50, 100, (2017, 2, 28)) name, shares, _, date ...

2017-03-02 15:46:54

阅读数:156

评论数:0

python性能优化指南

本文用以记录在python开发中遇到的性能提高技巧 持续更新中… 1.字符串 在python中string对象是不可变的,而字符串的相加会产生新的字符串。 当需要迭代生成一个长字符串时逐一相加不仅会影响速度也会而外增加内存消耗(如中间结果,参考java StringBuffer)...

2017-02-28 17:06:30

阅读数:194

评论数:0

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