自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vim、awk、tail、grep的使用

vim、awk、tail、grep的使用。

2023-08-01 15:02:32 901

原创 发送信息----策略模式

发送信息到手机、邮箱等,可扩展。

2023-07-31 10:36:11 542

原创 go语言设计模式之Functional Options

在极客时间上看了耗子叔发布的《Go语言编程模式实战》后,将这个模式用在了项目使用上,用于初始化数据。我的需求:结构体中分为用户的5部分信息,在insert的时候都是必填,在get的时候要验证该数据存不存在,不存在则insert一条数据,所以会出现除id必填以外,其他的都可为空。这就造成了传参数的话有很多“”,所以用了这个模式来处理数据初始化。// entity begintype Expert struct { store.BaseModel TenantId string `sql:"

2021-11-11 18:31:29 263

原创 性能测试工具AB的使用

性能测试工具AB的使用Ab的参数 -n requests #执行的请求数,即一共发起多少请求。 -c concurrency #请求并发数。 -t timelimit #测试所进行的最大秒数。其内部隐含值是-n 50000,它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。 -s timeout #指定每个请求的超时时间,默认是30秒...

2020-04-20 09:08:19 307

原创 JDBC操作mysql数据库(CRUD)

jdbc.properties(配置文件):项目根目录下driverClass=com.mysql.jdbc.Driverurl=jdbc:mysql://ip=localhostport=3306dbname=cnoocname=rootpassword=123456TestDemo.java(测试文件)(com.env.JdbcDemo包下)package com.env....

2020-03-04 16:47:57 172

原创 java---网络编程

// =====================UDP网络编程=================================== /**UDP * 客户端端 * 创建DatagramSocket,随机端口 * 创建DatagramPacket指定数据、长度、地址、端口 * 使用DatagramSocket发送DatagramPacket * 关闭DatagramSocke...

2020-03-04 10:46:06 92

原创 java---Thread多线程(下)

public class Demo {public static void main(String[] args) throws IOException { // =====================Thread多线程=================================== /**多线程单例模式 * 1、控制类的创建,不让其他类来继承对象,private * ...

2020-03-04 10:45:46 141 1

原创 java---Thread多线程(上)

public class Demo {public static void main(String[] args) { // =====================Thread多线程=================================== // /** * 多线程实现方法1 1、创建一个类,继承Thread类,重写run()方法, 2、实现这个类,调用start(...

2020-03-04 10:45:24 103

原创 java---IO字节流和IO字符流

// =====================IO字节流=================================== // 按流向分为:输入流和输出流 // 按操作类型分为字节流和字符流 /** * 字节流的抽象父类 InputStream OutputStream 字符流的抽象父类 Reader Writer * */ FileInputStream fis ...

2020-03-04 10:45:01 87

原创 java---HashSet集合类、Map集合类

//=====================HashSet集合类=================================== //set集合无索引、不可以重复、无序(存取不一致) //存储自定义对象,并保证元素的唯一性需要重写hashCode()和equals()方法 /** * 创建10个1到20的随机数 * 1、用Random类创建随机数对象 * 2、需要存储10...

2020-03-04 10:44:41 110

原创 java---LinkedList集合类

//=====================LinkedList集合类=================================== /** * public void addFirst(E e)及addLast(E e); * public E getFirst()及getLast(); * public E removeFirst()及removeLast() ...

2020-03-04 10:44:06 133

原创 java---Collection(单列集合的根接口)

//list集合可以存储重复元素, //set集合不可以存储重复元素, //=====================Collection(单列集合的根接口)集合类=================================== //基本功能 ArrayList c = new ArrayList(); boolean b1 = c.add("abc");//boolean ...

2020-03-04 10:43:30 494

原创 java---Arrays类、基本类型包装类、String和int类型的互转

//=====================Arrays类=================================== int[] arr = {33,26,53,14}; String string = Arrays.toString(arr);//public static String toString(int[] a);数组转字符串 Arrays.sort(arr);//...

2020-03-04 10:42:22 141

原创 java--StringBuffer类

//=====================StringBuffer类=================================== //String是一个不可变的字符序列,StringBuffer是可变的字符序列(线程安全的) //StringBuffer的添加功能 StringBuffer sb = new StringBuffer(); //可以把任意类型数据添加到...

2020-03-04 10:41:08 108

原创 java---String类的使用

byte[] arr1 = {97,98,99,100}; String str1 = new String(arr1);//将字节数组转换成字符串 char[] arr = {'a','b','c'}; //======================================================== String str = new String(arr);//...

2020-03-04 10:40:37 108

原创 网络编程(java)

网络编程三要素协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。UDP面向无连接,数据不安全,速度快。不区分客户端与服务端。TCP面向连接(三次握手),数据安全,速度略低。分为客户端和服务端。三次握手: 客户端先向服务端发起请求, 服务端响应请求, 传输数据网络编程(Socket通信原理图解)A:Socket套接字概述:网络上具有唯一标识的IP地址...

2020-03-04 10:37:03 77

原创 golang与栈

栈的介绍有些程序员也把栈称为堆栈,即栈和堆是同一个概念栈的英文为Stack栈是一个先入后出(FILO-First In Last Out)的有序列表栈(Stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。根据堆栈的定义可知,最先放入栈中的元素在栈底,最后...

2019-11-26 18:19:56 170

原创 golang实现稀疏数组(Sparse array)

基本介绍所谓稀疏数组就是数组中大部分的内容值都未被使用(或都为零),在数组中仅有少部分的空间使用。因此造成内存空间的浪费,为了节省内存空间,并且不影响数组中原有的内容值,我们可以采用一种压缩的方式来表示稀疏数组的内容。稀疏数组的处理方法:1. 记录数组一共有几行即列,有多少个不同的值2. 把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模假设有一个9*7的数组,其...

2019-11-19 18:51:30 334

原创 golang操作boltDB数据库小例子

操作流程1、打开数据库2、写数据库a、判断bucket是否存在,不存在则创建b、写入key、valuec、读取key对应的value直接上代码:package mainimport ( "github.com/boltdb/bolt" "log" "fmt")func main() { db, err := bolt.Open("./demo/boltDb/my...

2019-11-11 14:33:51 852

原创 macos系统,golang连接orcale数据库,安装go-oci8遇到的一些坑

golang连接orcale数据库Orcale安装在远程服务器(centos7)中,采用docker-compose部署,Navicat连接成功。版本为12.1.0.2.0docker-compose.yml version: '2' services: oracle: image: absolutapps/oracle-12c-ee environment: ...

2019-11-01 09:47:50 1498 1

原创 docker-compose部署oracle,并使用mac Navicat连接遇到的坑

使用docker-compose部署oraclevim docker-compse.ymlversion: '2'services: oracle: image: absolutapps/oracle-12c-ee environment: - ORACLE_PDB=system - ORACLE_PWD=oracle - ORACLE_CHAR...

2019-10-24 15:19:39 604

原创 golang操作mongodb

package mainimport ( mgo "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" "fmt")type Persion struct { Name string `json:"name"` Phone string `json:"phone"`}type Men struct { Persons []Persion}fu...

2019-10-23 18:57:22 133

原创 golang操作kafka

生产者producer.gopackage mainimport ("fmt" "github.com/Shopify/sarama")func main() { fmt.Printf("producer_test\n") config := sarama.NewConfig() config.Producer.RequiredAcks = sarama.WaitForAll...

2019-10-22 15:28:31 549

原创 docker-compose安装kafka集群

安装kafka和zookeepervim docker-compose.ymlversion: '2' services: zoo1: image: zookeeper restart: always container_name: zoo1 ports: - "2181:2181" volumes: ...

2019-10-22 15:22:05 823

原创 golang工作池小例

这是一个例子package mainimport ( "fmt" "strconv")type Job struct { Name string Time int}type State struct { State string}//打印出工作内容func Work(i int,jobs <-chan *Job,States chan <-*State...

2019-10-17 10:48:28 99

翻译 golang使用CockroachDB

golang使用CockroachDB步骤1.安装Go pq驱动程序go get -u github.com/lib/pq步骤2.创建maxroach用户和bank数据库启动内置的SQL客户端:cockroach sql --certs-dir=certs在SQL Shell中,发出以下语句来创建maxroach用户和bank数据库:CREATE USER IF NOT EXIS...

2019-10-12 10:51:14 699

翻译 docker部署CockroachDB

什么是CockroachDBCockroachDB是基于事务性和高度一致的键值存储构建的分布式SQL数据库。它水平缩放; 在磁盘,机器,机架甚至数据中心故障中幸存下来,从而将延迟中断降到最低,并且无需人工干预;支持 高度一致的 ACID交易;并提供了熟悉的 SQL API,用于结构化,操作和查询数据。docker运行CockroachDB步骤1: 创建网桥网络由于将在单个主机上运行多个Do...

2019-10-09 10:30:04 981

原创 go-----简单聊天室

go-----简单聊天室直接上代码运行直接上代码 package main import ( "fmt" "net" "strings" "time" ) //创建用户结构体类型 type Cline struct { C chan string Name string Addr string } //创建全局map,存储在线用户 var ...

2019-09-18 16:34:07 152

原创 服务发现----Consul

服务发现----Consul为什么要学习consul服务发现?Consul的介绍Consul是什么什么是服务发现Consul的安装下载安装验证安装合理的创建标题,有助于目录的生成Consul 的角色运行 Consul代理运行Agent启动 Consul Server启动 Consul Client查看集群成员停止Agent注册服务测试程序查询服务创建一个自定义列表为什么要学习consul服务发现...

2019-08-22 16:59:11 113

原创 数据库的范式设计(来自:sql必知必会---陈旸)

数据库的范式设计数据库的设计范式都包括哪些数据表中的那些键从 1NF 到 3NF数据库的设计范式都包括哪些我们在设计关系型数据库模型的时候,需要对关系内部各个属性之间联系的合理化程度进行定义,这就有了不同等级的规范要求,这些规范要求被称为范式(NF)。你可以把范式理解为,一张数据表的设计结构需要满足的某种设计标准的级别。目前关系型数据库一共有 6 种范式,按照范式级别,从低到高分别是:1NF...

2019-08-12 09:46:46 1364

原创 数据库调优,都有哪些纬度可以选择?(来自:sql必知必会---陈旸)

数据库调优,都有哪些纬度可以选择?数据库调优的目标第一步,选择适合的DBMS第二步,优化表设计第三步,优化逻辑查询第四步,优化物理查询第五步,使用 Redis 或 Memcached 作为缓存第六步,库级优化数据库调优的目标简单来说,数据库调优的目的就是让数据库运行的更快,也就是响应的时间更快,吞吐量更大。不过随着用户量的不断增加,以及应用程序复杂度的提升,我们很难用“更快”去定义数据库调优...

2019-08-09 18:41:50 837

原创 docker-compose搭建consul集群环境

docker-compose搭建consul集群环境docker-compose.yaml参数解析启动服务查看节点UI界面地址使用集群docker-compose.yamlversion: '2' networks: byfn: services:consul1: image: consul container_name: node1 command: agent -serve...

2019-08-06 15:37:18 1401

转载 go语言设计模式之命令模式(字节教育)

go语言设计模式之命令模式命令模式优点命令模式中有如下几个角色代码命令模式命令模式是将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为模式,其别名为动作模式或事务模式。优点一个调用者想创建一个对象,只知道对象名称就可以了;扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以;屏蔽产品的具体实现...

2019-07-23 13:48:53 145

转载 go语言设计模式之观察者模式(字节教育)

go语言设计模式之观察者模式察者模式代码察者模式观察者模式简单一句话说就是当特定事件出现时,一个对象实例把事件发布到对应的观察者实例上执行相应的更新操作。一个观察目标可以对应多个观察者,而且这些观察者之间没有相互联系,可以根据需要增加和删除观察者,使得系统更易于扩展,这就是观察者模式的模式动机。其类图如下:代码package mainimport ( "fmt" "time"...

2019-07-23 11:25:44 179

转载 go语言设计模式之单例模式(字节教育)

go语言设计模式之单例模式单例模式懒汉模式带锁的单例模式带检查锁的单例模式比较好的一种方式sync.Once单例模式单例模式,是一种常用的软件设计模式,在他的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例且该是例易于外界访问,从而方便对实例个数的控制并节约系统资源。懒汉模式懒汉模式是开源项目中使用最多的一种,最大的缺点是分线程安全的。//懒汉模式t...

2019-07-23 10:59:07 86

转载 go语言设计模式之工厂模式(字节教育)

go语言设计模式之工厂模式工厂模式优点缺点实现代码输出工厂模式工厂模式(Factory Pattern)是最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,创建对象时不会对客户端暴露创建逻辑,并且时通过使用一个共同的接口来执行新的创建的对象。优点一个调用者想创建一个对象,只知道对象名称就可以了;扩展性高,如果想增加一个产品,只要扩展一...

2019-07-23 10:30:45 127

原创 golang结合etcd简单实现分布式锁

etcd: 分布式高可用集群KV存储etcd与Raft的关系: Raft是强一致性的集群日志同步算法 etcd是一个分布式KV存储 etcd利用raft算法在集群中同步key-valuequorum模型: 集群需要2N+1个节点 replication:日志在leader生成,向follower复制,达到各个节点的日志序列最终一致 term:任期,重新选举产生的leader,...

2019-07-08 11:53:43 1115

原创 goalng实现单链表相关操作

package mainimport ( "fmt" "log")//链表元素type Element interface {}//链表type Node struct { Data Element Next *Node}//头节点type List struct { HeaderNode *Node}//判断链表是否为空func (this *Lis...

2019-06-11 13:25:52 100

原创 golang操作etcd

一、用docker-compose部署etcddocker-compose.yaml文件内容version: '2'networks: byfn: services:etcd1: image: quay.io/coreos/etcd container_name: etcd1 command: etcd -name etcd1 -advertise-client-urls ht...

2019-06-05 10:30:09 1018

原创 golang鸡尾酒(快乐小时)排序

一、鸡尾酒排序与冒泡排序的对比:鸡尾酒排序的优点是在特定的条件下减少排序的回合数,而缺点也很明显,代码量几乎扩大了一倍鸡尾酒排序适用场景:大部分元素已经有序的情况下二、代码://鸡尾酒排序(快乐小时排序)func cocktailSort(array []int) []int { tmp := 0 for i := 0; i < len(array)/2; i++ { is...

2019-05-31 16:42:29 186

multipleDB.zip

1、根据用户输入信息更改配置文件、切换数据库 2、根据用户输入sql语句查询相应数据

2019-10-09

websocket.zip

golan实现websocket,下后解压到开发目录,运行examples目录下的echo文件(go run echo.go),浏览器访问127.0.0.1:8080

2019-06-03

docker相关文档

daoke相关文档,这里写了相关文档和基本的操作命令,docker的相关简介

2018-11-14

空空如也

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

TA关注的人

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