自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (6)
  • 收藏
  • 关注

原创 Go 并發場景-仅需任意任务完成、所有任务完成才退出

Channel类型Channel类型的定义格式如下:ChannelType = ( "chan" | "chan" "<-" | "<-" "chan" ) ElementType .它包括三种类型的定义。可选的<-代表channel的方向。如果没有指定方向,那么Channel就是双向的,既可以接收数据,也可以发送数据。chan T // 可以接收和发送类型为 T 的数据chan<- float64 // 只可以用来发送 float64 类型

2020-05-08 23:45:40 208

原创 2023下半年软考复盘反思

2023年计算机软件资格考试复盘

2023-12-14 09:40:25 387

原创 k8s中 pod,service,deployment,ingress的使用场景

学习 k8s 之前首先对 k8s 中具体的组件做个简单的了解。1、Pod 是 k8s 中集群部署应用和服务的最小单元;2、RC 是 k8s 集群中最早的保证 Pod 高可用的 API 对象。它的作用就是保证集群中有指定数目的 pod 运行;3、RS 是新一代 RC,提供同样的高可用能力,是目前主要使用的对象;4、Deployment 提供了一种对 Pod 和 ReplicaSet 的管理方式,RS 的使用都是结合 Deployment 来完成的。

2023-12-12 17:21:35 1351

原创 kubernetes(k8s) Yaml 文件详解

用于配置和管理,YAML是一种简洁的非标记性语言,内容格式人性化,较易读。

2023-12-12 16:59:00 4043

原创 k8s常用操作命令

必须以字母或数字开头,最多包含63个字符,可使用:字母、数字、连字符" - " 、点"."和下划线" _ "。如果指定了--resource-version,则更新将使用此资源版本,否则将使用现有的资源版本。可以指定计算资源需求(CPU-单位m、内存-单位Mi),即使用的最小资源请求(Requests),限制(Limits)的最大资源需求,Pod将保证使用在设置的资源数量范围。:使用补丁修改,更新资源的字段,也就是修改资源的部分内容。:配置应用的一些特定资源,也可以修改应用已有的资源。

2023-12-11 20:45:46 961 3

原创 头条golang面试题

1.0 5个人去一个海岛寻宝,最后一共找到了100枚金币。他们约定了一个分配方案,如下:五个海盗按照抽签的顺序依次提出方案,某一个人提出方案之后,剩余存活的人投票表决:方案需要获得超过半数人的认可之后才能被通过,否则方案提出者将会被扔进大海喂鲨鱼,某一个方案被通过后游戏就结束。注:每个人的投票都是在追求自己利益的最大化:保证自己不会被喂鲨鱼的前提下,尽量使自己分到更多的金币。题目的意思应该很清楚了,五个人依次按照抽签顺序给出自己的分配方案,如果某个方案没有获得通过,那么该方案的提出者就会被扔进大海喂鲨鱼

2021-01-28 23:55:50 782 1

原创 golang面试题整理

1.go的调度调度器有三个基本结构, 称为 G, M 和 P. 一个 G 是一个 goroutine, 一个 M 是一个操作系统线程, 一个 P 是一个(逻辑)处理器.调度器有确切的 GOMAXPROCS 数量的 P (GOMAXPROCS是一个环境变量和运行时函数, 用来设置程序中的并发度). 为了让 M 执行一个 G, 它必须获得一个P, 然后运行 G 直到停止. G 通过进行诸如 I/O 操作的系统调用, 阻塞一个 channel 操作, 调用 C 函数, 正在被预抢占(pre-emption

2021-01-28 23:37:32 1243

原创 插入排序

插入排序插入排序的代码实现虽然没有冒泡排序和选择排序那么简单粗暴,但它的原理应该是最容易理解的了,因为只要打过扑克牌的人都应该能够秒懂。插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序和冒泡排序一样,也有一种优化算法,叫做拆半插入。1. 算法步骤将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当.

2020-12-29 17:36:37 128

原创 算法-选择排序

编译器:goland编程语言 go选择排序的基本思想:每一趟在n-i+1(i=1,2,3…,n-1)个记录中选取关键字最小的记录与第i个记录交换,并作为有序序列中的第i个记录。例如:待排序列: 43,65,4,23,6,98,2,65,7,79第一趟: 2,65,4,23,6,98,43,65,7,79第二趟: 2,4,65,23,6,98,43,65,7,79第三趟: 2,4,6,23,65,98,43,65,7,79第四趟: 2,4,6,7,43,65,98,65,2...

2020-12-25 15:03:55 165

原创 二分查找方法

二分查找将一组有序数组一分为二,将要查找元素与分割点比较,有三种情况:1.查找元素比分割点大 。->在分割点右侧继续查找2.查找元素比分割点小。->在分割点左侧继续查找3.查找原始等于分割点。->直接返回。 使用二分查找方法,每经过一次查找,查找范围缩小一半,如果数组元素个数为n,假设n是3的幂。第一次查找后,剩下N/2个元素继续查,第二次(n/2)/2个元素需要继续查。则第i次比较后,剩下n/2i个元素需要继续搜索。当i=log2n(以2为底n的对数),只剩下一..

2020-12-24 22:12:42 632

原创 快速排序(golang版本实现)

1. 快速排序算法算法描述:是对插入算法的一种优化,利用对问题的二分化,实现递归完成快速排序 ,在所有算法中二分化是最常用的方式,将问题尽量的分成两种情况加以分析, 最终以形成类似树的方式加以利用,因为在比较模型中的算法中,最快的排序时间 复杂度为O(nlgn).算法步骤将数据根据一个值按照大小分成左右两边,左边小于此值,右边大于 将两边数据进行递归调用步骤1 将所有数据合并 package mainimport "fmt"func QuickSort(array []in.

2020-12-24 21:41:12 198

原创 golang并发实战一 并发介绍

进程和线程 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。 一个进程可以创建和撤销多个线程;同一个进程中的多个线程之间可以并发执行并发和并行多线程程序在一个核的cpu上运行,就是并发。多线程程序在多个核的cpu上运行,就是并行。协程和线程协程:独立的栈空间,共享堆空间,调度由用户自己控制,本质上有点类似于用户级线程,这些用户级线程的调...

2020-12-20 20:31:40 113

原创 golang中Context的使用场景总结

场景一:RPC调用在主goroutine上有4个RPC,RPC2/3/4是并行请求的,我们这里希望在RPC2请求失败之后,直接返回错误,并且让RPC3/4停止继续计算。这个时候,就使用的到Context场景二:PipeLinepipeline模式就是流水线模型,流水线上的几个工人,有n个产品,一个一个产品进行组装。其实pipeline模型的实现和Context并无关系,没有context我们也能用chan实现pipeline模型。但是对于整条流水线的控制,则是需要使用上Context的。这篇文章Pi

2020-12-20 17:24:12 1037

原创 GO性能优化

go性能优化1 内存优化1.1 小对象合并成结构体一次分配,减少内存分配次数做过C/C++的同学可能知道,小对象在堆上频繁地申请释放,会造成内存碎片(有的叫空洞),导致分配大的对象时无法申请到连续的内存空间,一般建议是采用内存池。Go runtime底层也采用内存池,但每个span大小为4k,同时维护一个cache。cache有一个0到n的list数组,list数组的每个单元挂载的是一个链表,链表的每个节点就是一块可用的内存,同一链表中的所有节点内存块都是大小相等的;但是不同链表的内存大小是不等

2020-12-20 16:59:38 154

原创 基于C#、bootstap、三层架构 培训机构教务管理系统

这个系统没有MVC、没有ORM、数据库表都没设外键关系、级联删除等,所有需要级联操作的地方都是事务提交。界面上的所有操作基本都是jquery发ajax请求ashx处理,ashx处理后输出json前台接收处理并配合bootstrap的组件响应给用户。基本没什么门槛,代码轻松易懂。 适用场景:教务管理、校园管理、收费管理;框架使用OA、ERP、BPM、CRM、WMS、TMS...

2020-09-01 02:43:12 3686 4

转载 Linux wget命令详解

wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器。 wget支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成 wget 可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递...

2020-08-27 22:12:14 144

原创 /usr/bin与/usr/local/bin/区别总结

一.很多应用都安装在/usr/local下面,那么,这些应用为什么选择这个目录呢?理解了最根源的原因后,也许对你理解linux组织文件的方式有更直观的理解。而GUN下面绝大部分应用的编译系统都是用automake。于是乎,你看到的很多很多应用都安装在了/usr/local/目录 二.首先注意usr 指 Unix System Resource,而不是User,然后通常/usr/bin下面的都是系统预装的可执行程序,会随着系统升级而改变/usr/local/bin目录是给用户放置自己的可执行程...

2020-08-27 22:09:36 5368

原创 教务培训系统使用手册

校务管理系统操作手册业务咨询qq: 2878659797微信:fengxh03928882020年3月24日目录项目简介 1登录 1功能描述 13.1. 销售管理模块 23.1.1. 添加客户 23.1.2. 我的客户 33.1.3. 公海 33.1.4. 资源分配 43.1.5. 回访统计 53.1.6. 客户列表 53.1.7. 校区统计 53.1.8. 渠道统计 63.1.9. 来源统计 63.1.10. 课程顾问统计 73.2. 系统管理模块 73.2.

2020-06-07 23:54:27 1415

原创 Go Channel

Go Channel 详解Channel类型blockingBuffered ChannelsRangeselecttimeoutTimer和Tickerclose同步Channel是Go中的一个核心类型,你可以把它看成一个管道,通过它并发核心单元就可以发送或者接收数据进行通讯(communication)。它的操作符是箭头 <- 。ch <- v // 发送值v到Channel ch中v := <-ch // 从Channel ch中接收数据,并将数据赋

2020-05-08 23:38:36 141

原创 go语言中的defer、panic、recover处理异常

go语言中的defer就像c++中的析构函数,但是go语言中defer的对象是函数(或者对象的方法),defer能保证在函数结束最后执行该方法(函数),但是有例外:如果在定义的方法中defer定义的方法如果在panic后面,defer定义的方法就无法执行到。panic 是用来表示非常严重的不可恢复的错误的。在Go语言中这是一个内置函数,接收一个interface{}类型的值作为参数。panic...

2020-04-30 07:54:19 276

原创 Go多态实现

Go本身不具有多态的特性,不能够像Java、C++那样编写多态类、多态方法。但是,使用Go可以编写具有多态功能的类绑定的方法。Go使用struct构建类,根据不同类调用不同的方法, 使用struct对象类型来消除了方法的模糊性。直接撸代码package ch12import ( "fmt" "testing")//实现多态type Code stringtype P...

2020-04-29 00:14:02 612

原创 Go——空接口与断言

经常地我们对一个接口值的动态类型是不确定的,如方法的形参为接口类型时,此时就需要检验它是否符合我们需要的类型。类型断言是一个使用在接口值上的操作。断言类型的语法:x.(T),这里x表示一个接口的类型,T表示一个类型(也可为接口类型)。一个类型断言检查一个接口对象x的动态类型是否和断言的类型T匹配。类型断言分两种情况:第一种,如果断言的类型T是一个具体类型,类型断言x.(T)就检查x...

2020-04-29 00:09:22 455

原创 GO 错误机制

与其他编程语言的差异1.没有异常机制2.error类型实现 error接口 Type error interface{Error() String}4.可以通过errors.New() 快速创建错误实例最佳实践: 及早失败,避免嵌套,直接上代码:package ch14import ( "errors" "testing")func ...

2020-04-28 23:58:12 157

原创 Go中字符串切分与组合

1.go 中主要使用 strings.Split 对指定分隔符进行分割存放在slice里,然后可以通过range 遍历取值2.可以使用 strings.Join 对slice用指定符号拼接组合一起3.使用 strconv.Itoa可以把数字转化为字符串直接撸代码:func TestStringFn(t *testing.T) { m := "A,B,C" parts := ...

2020-04-24 00:22:48 763

原创 go 闭包

Go语言支持匿名函数,可以形成闭包。匿名函数在想要定义函数而不必命名时非常有用。函数getSequence()返回另一个函数,它在getSequence()函数的主体中匿名定义。返回的函数闭合变量i以形成闭包。当调用intSeq()函数,将结果(一个函数)分配给nextInt。这个函数捕获它自己的i值,每当调用nextInt时,它的i值将被更新。通过调用nextInt几次来查看闭包的效果...

2020-04-24 00:17:25 133

原创 GO 中实现扩展与复用

GO语言中没有继承,但是提供了一种扩展与复用。废话少说,直接上代码:package ch11import ( "fmt" "testing")type Pet struct {}func (p *Pet) Speak() { fmt.Printf("...")}func (p *Pet) SpeakTo(host string) { p.Spe...

2020-04-24 00:03:29 394

原创 Go语言中的Array、Slice、Map和Set使用

GO 数组Array在 Go 语言中数组是固定长度的数据类型,它包含相同类型的连续的元素,这些元素可以是内建类型,像数字和字符串,也可以是结构类型,元素可以通过唯一的索引值访问,从 0 开始。数组是很有价值的数据结构,因为它的内存分配是连续的,内存连续意味着可是让它在 CPU 缓存中待更久,所以迭代数组和移动元素都会非常迅速。数组声明和初始化数组声明和初始化通过指定数据类...

2020-04-23 00:17:24 417

原创 Go语言基础知识点分享

最近在加深对GO语言基础知识学习,巩固下基础,同时分享给朋友们go中单元测试通过 go test 进行测试go 中给我们提供一个包:testing,Go 为我们提供一些很好的功能,我们可以在不需要太多学习的情况下使用它们。若要在 Go 中开始使用测试,首先需要定义要测试的包。如果还没有,请创建一个名为 testing101 的包,并创建文件 sum.go,添加上下面的代码:p...

2020-04-22 23:43:04 200

原创 Go 语言函数作为实参

/* Go 语言可以很灵活的创建函数,并作为另外一个函数的实参*/package mainimport ( "fmt")type cb func(int) intfunc main() { fmt.Print("执行开始调用函数作为参数传递->") testCallback(1,callback) testCallback(2, func(...

2019-12-12 23:31:35 311

转载 rabbitMQ 消息队列

一、rabbitMQ是什么:  RabbitMQ,遵循AMQP协议,由内在高并发的erlanng语言开发,用在实时的对可靠性要求比较高的消息传递上。  学过websocket的来理解rabbitMQ应该是非常简单的了,websocket是基于服务器和页面之间的通信协议,一次握手,多次通信。 而rabbitMQ就像是服务器之间的socket,一个服务器连上MQ监听,而另一个服务器只要通过MQ...

2018-08-31 10:21:05 187

原创 python爬虫实战(一)做个图片自动下载器

制作爬虫的基本步骤环境 pyton 3.7顺便通过这个小例子,可以掌握一些有关制作爬虫的基本的步骤。一般来说,制作一个爬虫需要分以下几个步骤:分析需求 分析网页源代码,配合F12(没有F12那么乱的网页源代码,你想看死我?) 编写正则表达式 正式编写python爬虫代码效果: 恩,让我输入关键词,让我想想,输入什么好呢?好像有点暴露爱好了。好了,...

2018-08-05 16:20:24 3181 3

原创 Python中操作mysql的pymysql模块详解

这篇文章给大家演示了如何安装以及使用Python中操作mysql的pymysql模块,本文介绍的很详细,对大家学习Python具有一定参考借鉴价值,有需要的朋友们一起来看看吧。前言pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同。但目前pymysql支持python3.x而后者不支持3.x版本。本文测试python版本:3.7。mysql版本:5.6...

2018-08-05 11:00:02 449

原创 Scrapy(官网 http://scrapy.org/)爬虫(一)

Scrapy(官网 http://scrapy.org/)是一款功能强大的,用户可定制的网络爬虫软件包。其官方描述称:"Scrapy is a fast high-level screen scraping and web crawling framework, used to crawl websites and extract structured data from their page...

2018-08-05 09:36:03 5558

原创 企业OA系统

      需要程序的可以联系我哦:业务qq:2878659797一、源码特点               1、包含常用办公所有功能(财务,档案,人力资源,审批,会议,文件,业务等功能);        2、多年的技术积累和大量用户需求的汇总调整,保证了系统的安全性稳定性、易操作、管理维护简单的特点;        3、系统设计开发的规范性与全面性,利于系统的实现、测试、维护、版本升级...

2018-07-31 22:38:55 1911 1

原创 学习微信开发

微信开发,挺火,要学习下

2016-06-13 20:48:39 287

教务系统软件使用说明书v1.01.doc

教务培训机构系统使用手册,主要包括销售管理、系统管理、教学管理、账户管理、财务管理、排课、微信网站七大模块。加强对培训班管理

2020-06-07

jquery 权限系统(sql数据库,可控制到按钮)

jquery权限系统,可控制到按钮,有角色管理,菜单管理,人员管理,按钮管理,单位组织架构,web开发系统的框架

2013-06-06

酒店管理系统(extjs+sqlserver2005)

WS中介房源管理系统源码 源码描述: 功能介绍 房屋管理 增加房源,修改房源,删除房源,房屋控制台,查看 客户管理 增加客户信息,修改客户信息,删除客户信息,查询客户 业务管理 权限管理 用户管理:修改 删除 保存,备份数据 退出系统

2013-02-21

流风通用管理框架源码

query: Ajax技术的应用 IBatisNet: IBatis.Net就是一个比较易用的ORM框架,使用起来较为方便、灵活。IBatis.Net是从Ibatis的Java版本移植过来的.NET版本。iBATIS作为一种独特的Data Mapper,使用SQL映射的方式将对象持久化至关系型数据库。简单的理解就是它将我们在数据访问层实现的C#逻辑代码,变为通过关系数据库与对象的映射,将SQL逻辑放到外部的XML配置文件中,以方便以后的维护。 这个框架有两个主要的组成部分,一个是SQL Maps,另一个是Data Access Objects。Sql Maps是这个框架的核心部分,通过使用Sql Maps你可以显著的节约数据库操作的代码量。SQL Maps使用一个简单的XML文件来实现从实体到SQL statements的映射。使用DAO,封装了对数据的访问,你可以动态配置你的应用程序来访问不同的实体存储机制。隐藏持久性层实现的细节,Data Access Objects允许你通过一个简单接口的来操作数据。 系统功能说明 程序管理: 管理系统菜单数据,并对程序模块的权限进行定义,例如新增,编辑,审核等等操作的权限 缓存管理: 管理系缓存数据,当系统中缓存的数据有变化时,需要清除缓存并重新生成 日志管理: 登记用户操作系统的日志 角色管理: 管理系统角色信息,并可以对角色进行授权 用户管理: 管理系统用户信息,并可以定义用户所属的角色,部门,岗位,一个用户可以选择多个角色 部门管理: 管理系统部门信息 岗位管理: 管理系统岗位 在线用户: 查看当前登录系统的用户

2013-02-21

ADO.NET数据库操作SQLHelp类

算是一个通用类,在利用ASP.NET网站和系统开发中可以实现对数据库常用操作

2012-04-05

jjs写的日历控件Calenda

用JS写的日历控件,可以在WEB开发中使用

2012-04-05

空空如也

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

TA关注的人

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