9 molaifeng

尚未进行身份认证

暂无相关简介

等级
TA的排名 7k+

Go 错误处理

错误处理在默认情况下,当发生错误后(panic) ,程序就会退出(崩溃)如果我们希望:当发生错误后,可以捕获到错误,并进行处理,保证程序可以继续执行。还可以在捕获到错误后,给管理员一一个提示(邮件短信…)基本说明Go 语言追求简洁优雅,所以,Go 语言不支持传统的 try…cact…finally 这种处理。Go 中引入的处理方式为: defer, panic, recov...

2019-12-31 22:03:24

Go 数组、切片和 map

数组数组可以存放多个同一类型数据。数组也是一种数据类型,在 Go 中,数组是值类型。package mainimport "fmt"func main() { var hen [6]float64 hen[0] = 1.00 hen[1] = 1.00 hen[2] = 2.00 hen[3] = 3.00 hen[4] = 4.00 hen[5] = 50.00...

2019-11-30 18:25:01

Go 面向对象

引言Go 的面向对象,语法清奇,思路独特,和传统的面向对象语言如 Java 完全不同,可开阔思路。结构体谈到面向对象,就不得不提其载体 structtype 结构体名称 struct{ field1 type field2 type}以上便是其定义的语法,使用也很简单type Student struct { Name,Address string Age in...

2019-10-31 22:47:17

结构体大小计算、typedef、函数指针小记

结构体大小计算计算结构体大小的规则:每一个成员的偏移量都必须是该成员的倍数。结构体的大小必须是该结构体字节数最大成员的倍数。先来说说什么是偏移量,某个成员的实际地址和结构体首地址之间的距离struct data { int a; char b; int c;}因为 a 为首地址,因此偏移量为 0同时 int a 在内存中占 4 个字节,也就是是 b 的偏移量;由于 4...

2019-09-06 09:56:29

Go 初探

缘由现在用 Go 的公司越来越多,学 Go 的童鞋也越来越多,于是我便随大流开始学 Go,这篇博客便记录今晚安装及成功运行第一个 Hello World 的例子。安装进入 https://studygolang.com/dl 下载 https://dl.google.com/go/go1.13.windows-amd64.msi ,由于没有连上 Linux 环境,便在 Windows 上安...

2019-09-05 23:26:28

Asterisk 控制台为什么日志不显示颜色

今天在群里有个人问到请问下,这个彩色日志是怎样设置打印出来的,我的这些呼叫日志怎么都是白色的呢于是追踪了下。在 Linux 终端上显示颜色的代码,格式为%c[%d;%d;%dm%s%c[%d;%dm如,下面两个实例echo -e "\033[44;37;5m ME \033[0m"echo -e "\e[32;1m[OK]\e[0m"字色 背景 ...

2019-08-12 17:10:27

Heartbeat 安装教程

准备两台虚拟机10.254.124.22710.254.124.228虚拟 IP10.254.124.22关闭防火墙service iptables stop配置网络和主机名分别在两台服务器上的 /etc/hosts 加上10.254.124.227 Master10.254.124.228 Slave修改主机名vim /etc/sysconfig/network...

2019-07-10 17:45:19

利用 inotifywait 和 rsync 实现文件秒级同步

安装 inotifywaityum install -y inotify-tools安装 rsyncyum install -y xinetd配置 rsync把 /etc/xinetd.d/rsync 里面的 disable 值由 yes 改为 no,启动 xinetd,“service xinetd start”,再看看 netstat -tunlp | grep 873 ,发现 ...

2019-07-05 11:24:36

yum 安装 php7

安装 epel 和 remi 源wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmrpm -ivh epel-release-latest-7.noarch.rpmwget http://rpms.remirepo.net/enterprise/remi-release-7.rpmrpm ...

2019-06-27 18:07:50

浏览器跨域解决方案

今天介绍一个实用的浏览器跨域方案。比如 A 网址嵌入了 B 网址的页面,这时 B 网址的页面想要调用 A 网址的页面的方法,因为域名不同,由于浏览器同源策略的限制会被 blocked 掉的。一下给出一个方法在 A 网址的写下window.addEventListener("message",function(obj){ console.log(obj);});再在 B 网址的页面里...

2019-06-14 17:25:03

Asterisk 简介

Asterisk 定义Asterisk 是一个应用于 VOIP 的开放源代码的 PBX 系统;可以运行在 Linux,BSD,Windows(仿真的)以及 OS X 上;提供了语音邮箱服务(Voicemail)、电话会议、交互式语音应答(IVR)、呼叫队列,它还可以支持三方呼叫,主叫标识;支持 4 类 VOIP 的协议;通过使用相对便宜的硬件,它可以与几乎全部基于标准的电话设备进行互联操作。与...

2019-05-31 22:32:51

C 和指针第 9 章 字符串、字符和字节 笔记

这章总体来说,简单,基本就是进一步介绍了字符串、字符和字节常用函数的使用,以及注意的事项。9.1 字符串基础字符串就是一串零个或多个字符,并且以一个模式为全 0 的 NUL 字节结尾。头文件 string.h 包含了使用字符串函数所需的原型和声明。9.2 字符串长度就是它所包含的字符个数。size_t strlen(char const *string);size_t 定义在 st...

2019-04-28 23:05:24

C 和指针第 8 章 数组 笔记

这一章很重要,分别讲述了一维数组、多维数组以及指针数组,下面分别介绍一维数组数组名int a; int b[10];变量 a 称为标量,因为它是个单一的值,这个变量的类型是一个整型。在 C 数组名的值 b 是一个指针常量,也就是数组第 1 个元素的地址。它的类型决定数组元素的类型:如果它们是 int 类型,那么数组名的类型就是“指向 int 的常量指针”;如果它们是其他类型,那么数组...

2019-04-20 23:58:36

C 和指针第 7 章 函数 笔记

这章主要介绍了函数的相关信息,但没有涉及到函数指针高级操作,这章很简单,以下简要说下函数定义类型名函数名 (形式参数)代码块intfunc(int a, int b){ return a+b;}函数声明以下为函数原型的格式类型名 函数名 (形式参数);int *func(char *str, int value);注意,没有声明函数原型的函数,会被编译器缺省认定(默...

2019-04-16 23:49:36

C 和指针第 6 章 指针 笔记

第六章标题就是指针,可见重要程度,接下来我就总结下各个小节的知识点。内存和地址这里说的内存其实是 虚拟内存,而不是 物理内存,两者通过 内存映射 来管理,也就是将 虚拟内存地址 映射到 物理内存地址。同时记住以下两点1、内存中的每个位置由一个独一无二的地址标识2、内存的每个位置都包含一个值关于内存中的地址和内容,可以看下两张图名字和内存位置之间的关联并不是硬件所提供的,它是由编...

2019-04-14 19:36:00

C 和指针第 5 章 操作符和表达式 笔记

总述这章标题为操作符和表达式,主要讲述了操作符、布尔值、左值和右值、表达式求值,下面分别简要介绍下操作符算术操作符+、- 、*、/、%这里说下 / 和%,前者求商,后者用来求模也就是求余数,例如#include <stdio.h>int main(void){ printf("10/3=%d\n", 10/3); // 10/3=3 printf("1...

2019-04-10 00:00:26

C 和指针 1 至 4 章笔记

第 1 章 快速上手主要通过讲解一个例子,来让读者对 C 有一个的大概印象。#include <stdio.h>#include <stdlib.h>#include <string.h>#define MAX_COLS 20#define MAX_INPUT 1000int read_column_numbers(int columns[], ...

2019-04-07 22:51:46

GoAccess 分析 Nginx 日志

安装yum install -y glib2 glib2-devel GeoIP-devel ncurses-devel zlib zlib-develyum install gccyum install -y GeoIP-updateyum install -y goaccess安装成功后,可以查看[root@molaifeng log]# goaccess -VGoAccess...

2019-04-05 22:21:05

PHP 数组合并 array_merge 和加的区别

日常开发中,合并两个数组经常用 array_merge,偶尔用 +,但这两者有什么区别呢,下面结合两个例子分析。$arrA = ['hobby' => 'coding', 'age' => 17];$arrB = ['hobby' => 'dancing', 'age' => 27];print_r(array_merge($arrA, $arrB));/*A...

2019-03-18 14:53:53

git rebase 合并多个 commit

有个 JAVA 的 SEO 项目,前前后后拖了三个月,下周一上线,于是打算合到 master 上。可当合并时才记起,我都在 test_branch 分支上开发了,一开始从主分支派生的分支没用到,同时由于历史原因,这个测试分支和主分支不同步,不能直接合并。出现问题了,就得解决问题。于是我就祭出了之前看的 rebase 合并多个 commit 的技巧,具体是这样的,先查看这期需求开始到现在工提交了多...

2019-03-15 19:09:14

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。