自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(335)
  • 资源 (3)
  • 收藏
  • 关注

原创 Golang的几种限流 package的用法

常见Golang限流实现

2022-04-17 11:03:49 894

原创 Golang json 中文marshal

今天遇到了坑, golang 直接json.Marshal 中文 客户端不解析。必须是ASCII码才可以,所以学习了下,示例如下:package mainimport ( "encoding/json" "log" "strconv")type QuoteString stringfunc (q QuoteString) MarshalJSON() ([]byte, error) { return []byte(strconv.QuoteToASCII(

2022-01-24 19:46:55 1392

原创 Golang 从httpmock 了解http.RoundTripper

最近组内推进Golang的单元测试,代码有很多第三方请求的逻辑,如果冒昧的写单测可能影响第三方数据,或者拿不到期望数据。这个时候我们了解到可以通过github.com/jarcoal/httpmock(后面统称httpmock)来解决这个问题。我们先来看一段代码:func TestHttpReq(t *testing.T) { httpmock.Activate() defer httpmock.DeactivateAndReset() //mock期望的请求方式、url与返回结果

2021-07-01 18:34:48 629

原创 求每月有几周【Golang】

package mainimport ( "fmt" "time")func main() { d := time.Now()

2020-11-21 20:13:15 219

原创 获取某一周的日期区别【php】

直接上代码:function weekday($week){ $year = substr($week, 0, 4); $week = substr($week, 4); $year_start = mktime(0, 0, 0, 1, 1, $year); $year_end = mktime(0, 0, 0, 12, 31, $year); $init = date("W", $year_start); $w = date("w", $year

2020-07-30 12:03:14 133

原创 斐波那契的几种实现方法【Golang】

递归写法package mainimport "fmt"func main() { fmt.Println(F(6))}func F(i int) (f int) { if i <= 0 { return 0 } if i == 1 { return 1 } return F(i-1) + F(i-2)}动规思路package mainimpo...

2020-03-28 12:40:26 249

原创 Golang channel 使用总结(二)

有缓冲channel的关闭dead lock如果 在同一个Goroutine内,发送数大于缓冲数,就跟无缓冲类似了。package mainimport "fmt"func main() { pipline := make(chan string, 1) pipline <- "hello world" pipline <- "hello Gola...

2020-03-27 15:56:46 253

原创 Golang channel 使用总结(一)

无缓冲channel的使用package main import "fmt"func main() { ch :...

2020-03-27 15:27:12 288

原创 shell 命令行输出二进制文件后乱码的处理

操作环境SecureCRT操作场景select * from db.table 时 有一列存的是二进制,结果输出后,界面乱码解决办法输入echo -e '\xf'并回车。与这个命令相对的是echo -e ‘\xe’0x0E is SI (Shift In),0x0F is SO (Shift Out).参考资料http://man7.org/linux/man-pa...

2020-03-20 10:54:44 712

原创 Golang实现单链表

package mainimport "fmt"type A interface { Add() Update() ShowList()}type Item struct { no int name string nickname string next *Item}func main() { it := &Item{} //初...

2019-12-09 12:19:20 153

原创 Golang 实现冒泡算法、选择算法与插入算法

package mainimport "fmt"func main() { bubbleSort() selectSort() insertSort()}func bubbleSort() { arr := []int{6, 3, 8, 2, 9, 1} length := len(arr) var flag bool for i := 0; i < lengt...

2019-12-09 12:17:44 121

翻译 Uber 公司Golang编程规范【翻译】

引言样式是支配我们代码的惯例。 术语“样式”有点用词不当,因为这些约定不仅仅涵盖那些可以由gofmt替我们处理的源文件格式。本指南的目的是通过详细描述在Uber编写Go代码的注意事项来管理这种复杂性。 这些规则的存在是为了使代码库易于管理,同时仍然允许工程师有效地使用Go语言功能。该指南最初由Prashant Varanasi和Simon Newton编写,目的是使一些同事快速使用Go。 多...

2019-10-13 10:39:50 1505

原创 Golang开发构建环境配置

Golang 1.13使用vim-govim-go 需要Vim 7.4.2009, 默认的centos7 上 yum 安装的是7.4.1006, 所以先升级[@sjs_19_176 ~]# yum install -y gcc gcc-c++ ruby ruby-devel lua lua-devel \ctags git python python-devel \tcl-devel...

2019-09-05 11:38:40 549

原创 HDFS 使用整理汇总

Hadoop常见问题整理汇总MapReduce报错: The NameSpace quota (directories and files) of directory /user/ime_iweb_pinyin is exceeded:MapReduce报错: The NameSpace quota (directories and files) of directory /user/ime_...

2019-09-04 11:20:44 235

原创 【转载】MySQL Community Server 5.7.5发布

改进1: 内存动态管理: 此版本对InnoDB的Buffer Pool(innodb_buffer_pool_size)允许在联机状态下修改其大小.这极大地提升了InnoDB缓存区管理的灵活性,另外可有效动态提升Server的整体效率改进2: Optimizer – ONLY_FULL_GROUP_BY mode. 在分组操作时,使得MySQL能识别目标列/排序列/HAVING的条件列/DIST

2017-05-27 22:18:36 421

原创 Python格式化中使用%与C prinf格式输出的区别

一.格式1.1 C printf()的一般格式   printf(格式控制,输出列表);   例:int i = 3;      double f = 4.56;      printf("%d,%f", i,f);1.2  PYTHON 格式化输出   格式标记字符串 % 要输出的值组   其中,左边部分的”格式标记字符串“可以完全和c中的一致。右边的'值组'如果有两个及以

2017-05-27 22:18:33 2690

原创 linux awk 的基础应用

在Linux系统中,AWK 是一个非常强大的文本处理工具,在日常统计中起到重要的作用。[@sjs_73_194 ~]$ man awkGAWK(1) Utility Commands GAWK(1)NAME gawk - pattern scanning and processin...

2017-05-27 22:18:30 569

原创 揭开Socket编程的面纱 【转载】

对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问:1. 什么是TCP/IP、UDP?2. Socket在哪里呢?3. Socket是什么呢?4. 你会使用它们吗?什么是TCP/IP、UDP? TCP/IP(Transmission Cont...

2017-05-27 22:18:27 405

原创 vi --打开多文件的操作 【转】

多标签进入vim前 vim -p 以多标签形式打开文件。如vim -p * 就是编辑当前目录的所有文件,vim编辑中:tabnew 增加一个标签:tabc       关闭当前的tab:tabo       关闭所有其他的tab:tabs       查看所有打开的tab:tabp 或gT 前一个:tabn 或gt  后一个新建标签页:tabe 在新标签页中打开

2017-05-27 22:18:24 502

原创 Kafka

Kafka是一个高吞吐量分布式消息系统。linkedin开源的kafka。 Kafka就跟这个名字一样,设计非常独特。首先,kafka的开发者们认为不需要在内存里缓存什么数据,操作系统的文件缓存已经足够完善和强大,只要你不搞随机写,顺序读写的性能是非常高效的。kafka的数据只会顺序append,数据的删除策略是累积到一定程度或者超过一定时间再删除。Kafka另一个独特的地方是将消费者信息保

2017-05-27 22:18:21 347

原创 【消息队列MQ】各类MQ比较 【转载】

原文地址:http://blog.csdn.net/sunxinhere/article/details/7968886目前业界有很多MQ产品,我们作如下对比:RabbitMQ是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,XMPP, SMTP, STOMP,也正是如此,使的它变的非常重量级,更适合于企业级的开发。同时实现了一个经纪人(Broker)构架,这意味着消

2017-05-27 22:18:18 416

原创 理解php内核的 引用计数器与写时复制

zval结构中有以下两个成员变量用于引用计数器:is_ref:BOOL值,标识变量是否是引用集合refcount:计算指向引用集合的变量个数写时复制:就是当变量的值改变时才进行内存的复制。$a = "this a test ";xdebug_debug_zval('a');$b = $a;xdebug_debug_zval('a');$a = "changed the test value";xd

2017-05-27 22:18:15 362

原创 快速从LAMP 迁移 到 LNMP教程

已有环境:LAMP 安装 nginx:yum install -y nginx安装 php-fpm:yum install -y php-fpm关闭httpdservice httpd stopchkconfig --level 2345 httpd off配置 nginx虚拟主机:#vi /etc/nginx/conf.d/virtual.conf server { liste

2017-05-27 22:18:13 792 1

原创 Vim 复制粘贴探秘【转】

转载地址:http://www.cnblogs.com/end/archive/2012/06/01/2531147.htmlVim 作为最好用的文本编辑器之一,使用vim来编文档,写代码实在是很惬意的事情。每当学会了vim的一个新功能,就会很大地提高工作效率。有人使用vim几 十年,还没有完全掌握vim的功能,这也说明了vim的强大。而这样何尝不是一件好事呢,只要有的学习,就有的提高。 最

2017-05-27 22:18:04 316

原创 【转载】互斥锁pthread_mutex_t的使用(转载)

1. 互斥锁创建有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER来静态初始化互斥锁,方法如下: pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER;在LinuxThreads实现中,pthread_mutex_t是一个结构,而PTHREAD_MUTEX_INITIALIZER则是一个结

2017-05-27 22:18:01 354

原创 /usr/bin/ld: cannot find -lc 解决

[linux_day01]#cc -static hello.c /usr/bin/ld: cannot find -lccollect2: ld 返回 1主要原因是,在安装Linux时,如果不选择开发环境,会默认安装需要的动态库,但不会安装静态库。如果我们在静态连接程序时,会找不到libc.a这个基础静态库文件。这时我们安装相应的库文件就可以了:[linux_day01]#yum install

2017-05-27 22:17:59 1195

原创 Page Size 【转】

原文地址:http://blog.csdn.net/tttt418/article/details/6113860看好多论文和源码中都有Page Size的概念,我却一直比较模糊,今天特地仔细查了一下。 基本概念In the context of computer virtual memory, a page, memory page, or virtual page is a fixed

2017-05-27 22:17:56 1000

原创 main (int argc,char *argv[ ]) 与 getopt

main(int argc, char *argv[ ], char **env)才是UNIX和Linux中的标准写法。argc: 整数,用来统计你运行程序时送给main函数的命令行参数的个数* argv[ ]: 字符串数组,用来存放指向你的字符串参数的指针数组,每一个元素指向一个参数argv[0] 指向程序运行的全路径名argv[1] 指向在DOS命令行中执行程序名后的第一个字符串ar

2017-05-27 22:17:53 343

原创 C语言static关键字解析 【转】

转载地址:http://blog.csdn.net/wu_zf/article/details/70683261、概述  static 声明的变量在C语言中有两方面的特征:  1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。  2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见。这一点是它与全局变量的区

2017-05-27 22:17:50 638

原创 socket阻塞和非阻塞的区别【转】

转载地址:http://kalogen.iteye.com/blog/670841简单点说:阻塞就是干不完不准回来,   非组赛就是你先干,我现看看有其他事没有,完了告诉我一声我们拿最常用的send和recv两个函数来说吧... 比如你调用send函数发送一定的Byte,在系统内部send做的工作其实只是把数据传输(Copy)到TCP/IP协议栈的输出缓冲区,它执行成功并不代表数据已经成功的

2017-05-27 22:17:47 276

原创 LADP使用

//1、连接ladp$ldaphost = "ldap.example.com"; // your ldap servers$ldapport = 389; // your ldap server's port number// Connecting to LDAP$ds= ldap_connect($ldaphost, $ldapport) or die("C

2017-05-27 22:17:45 1656

原创 LINUX命令行 查看memcache运行状态

1、确保memcache是启动的2、 /etc/rc.d/init.d/memcached start &3、链接进入telnet localhost 112114、stats 命令这些状态的说明如下:pidmemcache服务器的进程IDuptime服务器已经运行的秒数time服务器当前的unix时间戳versionmemcache版本pointer_s

2017-05-27 22:17:42 2901

原创 SVN 常用操作命令

linux:linux下重新定位SVN URL方法:如果更换了SVN服务器,就需要重新定位,指向新的SVN URL。重新定位命令:svn switch --relocate 原svn地址 新svn地址如何查看原svn地址?查看原svn路径方法:svn infoubuntu下SVN树冲突的解决方法:sjybing@ubuntu:/host/Tianci/2995_E690U_old/ker

2017-05-27 22:17:39 459

原创 <meta http-equiv=\"refresh\" content=\"0; url=\"> 【转】

页面定期刷新,如果加url的,则会重新定向到指定的网页,content后面跟的是时间(单位秒),把这句话加到指定网页的里一般也用在实时性很强的应用中,需要定期刷新的如新闻页面,论坛等,不过一般不会用这个,都用新的技术比如ajax等  '经过一段时间转到另外某个页面content="0;URL=",这里0表示没有延时,直接跳转到后面的URL;把0改成1,则延时1秒后跳转。 网页自动计时跳

2017-05-27 22:17:36 588

原创 Sysctl [摘]

Sysctl is an interface for examining and dynamically changing parameters in the BSD and Linux operating systems. The implementation mechanism in these two systems is very different.In BSD, these para

2017-05-27 22:17:33 196

原创 为XAMPP添加MemCache支持【转】

首先下载PHP的扩展模块,php_memcache.dll 下载地址如下,Ctrl+F搜索一下就能快速找到了php_memcache.dll下载地址   http://downloads.php.net/pierre/然后下载安装MemCache支持 http://jehiah.cz/projects/memcached-win32/ memcached.exe -d install 

2017-05-27 22:17:31 414

原创 如何配置XAMPP的虚拟主机[转]

apache的虚拟主机配置在两三年前就知道,但是因为太久竟然也忘记也一些规则。今天在给xampp配置虚拟主机的时候,被其内置的规则搞的有点晕。最后只能回头再去阅读一下apache文档才彻底搞清楚了。备忘一下。  首先xampp在httpd.conf里面配置禁止遍历整个文件系统,对文件系统的默认访问被禁止,保护服务器文件。原来配置如下: Options FollowSymLinks AllowOve

2017-05-27 22:17:28 296

原创 [php] 索引数组合并选择两数组相加

header("Content-Type:text/html;charset=utf-8");$arr1= Array ( 0 => Array ( 'pic' => "http://storage.travel.sina.com.cn/jingdian/jingdian/20140410_144945_88563_default_238_pic_133.p

2017-05-27 22:17:22 2289

原创 【转载】解决ncurses中文乱码问题

使用ncurses却发现中文无法显示,显示出来的都是乱码,网上搜索后发现了ncursesw的unicode版本,这样只需要要编译的时候使用-lncursesw就可以显示中文了,但是我却发现这也没有用处,中文还是照样无法显示,后来经过折腾终于解决了这个问题,其实很简单,在程序的开始设置一下locate就行了 #include <locale.h> char *...

2017-05-27 22:17:19 1610 1

原创 怎么编写Makfile中_了解.PHONY

build: go build -o ~/bin/.PHONY: build我们了解上面代码中提到的·.PHONY·.PHONY是一个特殊工作目标(Special Built-in Target Names)。它用来指定一个伪目标,也就是说它后面的并不是一个实际文件。PHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字。使用伪目标有两个好处:避免和同...

2017-05-27 22:17:16 4610

jmxtools-1.2.1.jar+jmxri-1.2.1.jar.zip

需要的自会需要,介绍没用,亲测可用。 javax.jms包,sun的JMS接口规范包,官方已经不提供了,这里给2分,给大家下载。

2020-03-17

2010地纬校园招聘机试C#

2010地纬机试题,是个学生选课系统挺正式的的。参加了,但我没过。争取下次机会吧。

2010-03-31

IA-32架构 英特尔

介绍英特尔CPU架构的知识。属PDF格式,共34页

2008-10-02

空空如也

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

TA关注的人

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