最新 | 最热门 | 最高评价

+0  一个有特色的有限状态机

Tag: Go
鸟窝 发于 2017年03月22日 23:18 | 点击: 588 | 展开摘要
gofsm是一个简单、小巧而又特色的有限状态机(FSM)。

github已经有了很多状态机的实现,比如文末列出的一些,还为什么要再发明轮子呢?

原因在于这些状态机有一个特点,就是一个状态机维护一个对象的状态,这样一个状态机就和一个具体的图像实例关联在一起,在有些情况下,这没有什么问题,而且是很好的设计,而且比较符合状态机的定义。但是在有些情况下,当我们需要维护成千上百个对象的时候,需要创建成千上百个状态机对象,这其实是很大的浪费,因为在大部分情况下,对象本身自己会维护/保

查看全文: http://www.udpwork.com/item/16029.html

+0  [译]Go Slice 秘籍

Tag: Go
鸟窝 发于 2017年03月22日 20:17 | 点击: 143 | 展开摘要
这是 Golang官方的一个总结: SliceTricks

由于引入了内建的append的方法, 包container/vector的很多方法都被移除了,可以被内建的append和copy方法代替。

下面是栈vector的操作方法的实现,使用slice实现相关的操作。

AppendVector

1

a = append(a, b...)

Copy

1
2
3
4

b = make([]T, len(a))
copy(b, a)
// 如果a不为空,也可以用下面

查看全文: http://www.udpwork.com/item/16187.html

+0  前端架构的设计与进化

Tag: First Category
s5s5 发于 2017年03月21日 10:04 | 点击: 226 | 展开摘要
上周参加了一门这个课,笔记一下

架构

开发模式

通用模型

模板引擎

基础类库

组件框架

避免GOOGLE

大厂

选合适的

不用时怎么办

代码结构

团队和业务快速变化

开发行为耦合

多特性多并行

主线是什么

开发规范

编码

设计思路

模块拆分

结构分层

工具平台

工程化过程

框架支撑

研发效率(质量)

代码管理

运营支撑

运维监控

流程边界

流程

分工跨界

活动开发

平台化

经验沉淀

核心理念

查看全文: http://www.udpwork.com/item/16185.html

+0  编写地道的Go代码

Tag: Go
鸟窝 发于 2017年03月10日 10:36 | 点击: 706 | 展开摘要
在阅读本文之前,我先推荐你阅读官方的 Effective Go文档,或者是中文翻译版: 高效Go编程,它提供了很多编写标准而高效的Go代码指导,本文不会再重复介绍这些内容。

最地道的Go代码就是Go的标准库的代码,你有空的时候可以多看看Google的工程师是如何实现的。

本文仅作为一个参考,如果你有好的建议和意见,欢迎添加评论。

注释

可以通过 /* …… */ 或者 // ……增加注释, //之后应该加一个空格。

如果你想在每个文件中的头部加上注释,需要在版权注释

查看全文: http://www.udpwork.com/item/16139.html

+0  为 Go Mutex 实现 TryLock 方法

Tag: Go
鸟窝 发于 2017年03月09日 17:49 | 点击: 343 | 展开摘要
Go标准库的sync/Mutex、RWMutex实现了sync/Locker接口, 提供了Lock()和UnLock()方法,可以获取锁和释放锁,我们可以方便的使用它来控制我们对共享资源的并发控制上。

但是标准库中的Mutex.Lock的锁被获取后,如果在未释放之前再调用Lock则会被阻塞住,这种设计在有些情况下可能不能满足我的需求。有时候我们想尝试获取锁,如果获取到了,没问题继续执行,如果获取不到,我们不想阻塞住,而是去调用其它的逻辑,这个时候我们就想要TryLock方法

查看全文: http://www.udpwork.com/item/16169.html

+0  [译] Go 可视化性能分析工具

Tag: Go
鸟窝 发于 2017年03月06日 11:52 | 点击: 465 | 展开摘要
原文: A Short Survey of PProf Visualization Tools by Jordan Crabtree。

调试CPU相关的问题经常会涉及关于趋势的微妙问题。堆使用的峰值是否逐渐的增长? routine在什么地方被调用,调用的频度如何?

一图胜千言。
一张图片就可以提供很多有用的上下文信息,否则如果用语言解释起来累的半死。将pprof可视化显示可以将有用的CPU统计数据与整个时间的上下文关联起来。

pprof 是什么?

PProf是一个CP

查看全文: http://www.udpwork.com/item/16153.html

+0  [译]Go HTTTP Response代码片段

Tag: Go
鸟窝 发于 2017年02月22日 13:51 | 点击: 349 | 展开摘要
原文: HTTP Response Snippets for Go by Alex Edwards.

受 Rails layouts and rendering启发, 我觉得写一个关于Go HTTP Response的代码片段集合是一个不错的主意, 它可以用来说明Go web应用程序中通用的HTTP Response的使用。

只发送header

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

package main

import (
"

查看全文: http://www.udpwork.com/item/16143.html

+0  通过 noVNC 实现数千台自助机的实时可视化

Tag: *nix | Django | infrastucture | kiosk | LDAP | mysql | saltstack | vnc | websocket
jaseywang 发于 2017年02月06日 20:17 | 点击: 571 | 展开摘要
背景很简单,目前我们运营维护着北京市属三甲医院数千台的自助机,这里面包含挂号取号机、检查报告机以及其他若干衍生出来的自助机种类,数量已经超过一千多台,不同的院区通过密密麻麻的专线跟我们的机房源源不断的进行着各种协议的数据传输与交互。

由于各方面技术以及非技术层面的限制,只能使用微软的系统,为了管理这部分的机器,一方面我们通过 saltstack 来进行日常的产品升级以及变更,对于桌面的可视,比如我们需要知道当前这台自助机前患者的操作,就需要 VNC 来帮助了。

一年前

查看全文: http://www.udpwork.com/item/16089.html

+0  Golang 知识点总结

Tag: Go
鸟窝 发于 2017年02月03日 08:53 | 点击: 506 | 展开摘要
原文: Golang Summaries by TapirLiu

本文是由TapirLiu总结的Golang中的一些知识点,对于深入学习Golang很有帮助,所以我特意翻译了一下。

各种类型复制的时候的花费

本节标题也可以叫做“各种类型的值的大小” (the sizes of values of all kinds of types),底层可被不同的值共享的数据的大小未被计算。

下面的表格中一个 word在32bit操作系统中代表4个字节,在64bit操作系统中代表8

查看全文: http://www.udpwork.com/item/16086.html

+0  如何在长城后面go get一些库

Tag: Go
鸟窝 发于 2017年01月26日 11:30 | 点击: 582 | 展开摘要
国内的Go开发已然蔚然成风,但是Go开发者比较痛苦的是,golang.org网站以及其它的一些相关的开发网站被GFW屏蔽了。下载Go开发包海容易些,国内有一些镜像站点,或者通过一些代理也能访问,但是下载一些开发库的时候,这些库可能直接或者间接引用了 `golang.org/x/...`等依赖库, 通过go get命令确没有办法下载下来。

我原先在Comcast,这是一家外企,在国内有vpn可以直接访问这些网站,所以以前没有觉得go get是一个问题,看到大家被GFW弄的焦头

查看全文: http://www.udpwork.com/item/16079.html

+0  LeetCode题目解答——第311到371题

Tag: Algorithm & Data Structure | LeetCode
四火 发于 2017年01月19日 13:19 | 点击: 367 | 展开摘要
老规矩,跳过需要付费的题目。题目是越来越不好做,我尽量把自己的思路写下来。

371

Sum of Two Integers 

51.9%
Easy

368

Largest Divisible Subset 

31.9%
Medium

367

Valid Perfect Square 

36.9%
Medium

365

Water and Jug Problem 

24.7%
Medium

363

Ma

查看全文: http://www.udpwork.com/item/16069.html

+0  从 MongoDB “赎金事件” 看安全问题

Tag: 技术新闻 | 网络安全 | Bitcoin | MongoDB | ransom | 安全
陈皓 发于 2017年01月07日 17:11 | 点击: 581 | 展开摘要
今天上午(2017年1月7日),我的微信群中同时出现了两个MongoDB被黑掉要赎金的情况,于是在调查过程中,发现了这个事件。这个事件应该是2017年开年的第一次比较大的安全事件吧,发现国内居然没有什么报道,国内安全圈也没有什么动静(当然,他们也许知道,只是不想说吧),Anyway,让我这个非安全领域的人来帮补补位。

事件回顾

这个事情应该是从2017年1月3日进入公众视野的,是由安全圈的大拿 Victor Gevers (网名:0xDUDE,GDI.foundation

查看全文: http://www.udpwork.com/item/16052.html
|<<<1234567>>>| 一共48页, 568条记录