自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (4)
  • 收藏
  • 关注

原创 Docker 启动单个Redis节点与设置配置文件

记录下Docker启动Redis和设置配置文件的过程docker命令docker run -d -p 6379:6379 -v $('pwd')/redis.conf:$('pwd')/redis.conf -v /root/Desktop/RedisData:/Data --name myredis redis redis-server $('pwd')/redis.conf参数解读:...

2019-01-07 14:19:46 1005

原创 dotnetCore源码扩展:自定义ActionResult

前言: 有时候需要再全局对结果进行包装类似如下的返回结果{ code:200, result:{}}而.Net自带的ActionResult自带一些不相关的属性,比如下面这样的,正文为了解决上面的问题,继承ActionResult类并重载 ExecuteResultAsync方法public class MyContentResult : ActionResult...

2019-01-07 13:47:38 2457 1

原创 linux下docker通过挂载数据卷到 mysql实现容器配置本地化

前言:当希望在本地上配置容器中的mysql时,发现一个问题,本地需要完整的配置文件目录,如果本地是空目录,那么容器中的配置目录也是空的所以不能运行镜像,这里解决这个问题,思路是任意运行一个容器,把里面的配置目录复制到本地,然后删除这个容器,再创建新的容器,并把复制出来的配置目录和容器中的配置目录同步,这里记录下这个过程。第一步:创建一个本地配置目录输入命令:mkdir -p /root/D...

2018-11-04 00:52:21 5792

原创 docker 部署 webapi 示例

利用docker的容器化平台来部署一个.net core webapi项目第一步:创建的WebAPI项目可以通过vs创建项目也可以通过dotnet new webapi来创建,示例使用的是命令行创建的,目录如下:第二步:编译通过手动生成项目通过dotnet build生成,也可以vs生成第三步:编写Dockerfile文件注意名称,Dockerfile文件没有后缀,...

2018-10-31 20:50:13 3741

原创 阿里云linux 通过docker 使用 rabbitmq

记录下docker安装使用rabbitmq,参考:https://hub.docker.com/_/rabbitmq/第一步:下载镜像docker pull rabbitmq:3.7.8-management第二步:启动容器docker run -d -p 15672:15672 -p 5671:5671 -p 5672:5672 --hostname rabbitmqhost -...

2018-10-22 22:45:53 648

原创 阿里云linux 通过docker 使用 mysql

使用容器能够屏蔽一些第三方组件需要的一些依赖,简化繁琐的安装流程,易于管理,这里通过使用MySQL的镜像慢慢熟悉搬运工这里记录下在云环境linux下使用的MySQL遇到的一些坑第一步:下载MySQL的镜像docker pull mysql:latest#:latest表示最新​​版本通过“:”来指定版本第二步:创建MySQL的容器docker run --name localm...

2018-10-21 23:43:52 508

原创 阿里云 linux ubuntu 安装docker

# step 1: 安装必要的一些系统工具 sudo apt-get update sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common # step 2: 安装GPG证书 curl -fsSL http://mirrors.aliyun.com/docker-...

2018-10-21 20:56:21 559

原创 快速使用阿里云 Linux ubuntu,安装xfce4 图形界面,并提供远程桌面支持

阿里云Ubuntu系统默认不安装UI,所以一开始是命令行界面,root账号登录后:依次执行以下命令,可快速构建UI程序并提供本地Windows系统远程桌面支持。第一步:更新软件仓储sudo apt-get update #更新apt  同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中使用的数据源;ps: 网络收集的数据源(...

2018-10-21 20:52:04 3337

原创 设计模式(一)单例模式

前言:设计模式就是在软件发展过程中,根据类似的一些应用场景,总结并沉淀下来的一套套经典解决方案,分为三大类型:创建型、结构型、行为型,每种类型都针对具体的应用场景给出了不同的解决方案,但设计模式并非万能,有些场景不适用,或者会造成项目复杂度上升。创建单例模式方法一:采用双if+lock的方式保证线程安全,第一个if保证线程在并发时不会进行无意义的等待,lock保证同一时刻只有一个线...

2018-09-17 23:14:27 118

原创 观察者模式中多线程执行订阅事件并顺序执行的问题

       对事件发布订阅模式中启动线程执行操作,但又要保证线程顺序执行的一些思考和实践,在开发过程中,经常会遇到需要使用事件来触发方法执行的情况,比如CS中按钮的点击事件,鼠标移动事件,键盘监听事件等等,有时候需要执行比较耗时的任务,但并不希望阻塞主线程,导致界面卡顿,使用线程有不能保证线程像同步的执行顺序一样顺序执行,因为有时候事件是系统触发的所以没有办法等待,所以在这儿记录下这个解决思路。...

2018-09-16 20:02:13 1884

原创 EFCore 【Sqlite、Mysql】数据库迁移 并使用数据库,CodeFirst、DBFirst

通过alt+v+e+o组合键来唤醒程序包管理器通过在程序包管理器控制台中输入指令:get-help about_entityframeworkcore 查看EFCore的帮助文档。EFCore CodeFirstEFCore 使用Sqlite数据库迁移的步骤:第一步:安装依赖nuget包:Microsoft.EntityFrameworkCoreMicrosoft.E...

2018-09-15 22:00:02 3379 1

原创 Mysql社区版安装教程

第一步:从官网下载社区服务器压缩包https://dev.mysql.com/downloads/mysql/第二步:在解压出的目录下新建my.ini文件[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[mysqld]# 设置3306端口port = 3306# 设置mysql的安装目录basedir...

2018-09-11 22:48:59 10022

原创 多线程和锁和原子操作和内存栅栏(二)

        这里记录下各种锁的使用和使用场景,在多线程场景开发时,我们经常遇到多个线程同时读写一块资源争抢一块资源的情况,比如同时读写同一个字段属性,同时对某个集合进行增删改查,同时对数据库进行读写(这里要用到事物,数据库锁等知识)等,这里往往为了做到数据的一致性和有效性,需要进行对线程之间的在某一时刻或一小段时间的同步操作,来保证数据安全,不会中途造成数据值读写不准确的情况,这个时候一般情...

2018-08-13 23:09:06 339

原创 多线程和锁和原子操作和内存栅栏(一)

线程的定义是执行流的最小单元,而进程是一个逻辑线程容器,用来隔离线程。Task类封装了线程池线程,启动的所有线都由线程池管理,他提供了很多使用方便的API函数,使多线程开发变得容易。上述代码中我启动了一个线程,并在线程方法中使用了异步关键字,异步方法实现了一个状态机,能够在等待任务完成时继续执行之后的代码,这里利用该特性实现线程顺序执行,并且上述代码使用了ContinueWith方法,这是一个任务...

2018-05-31 22:43:22 2081

原创 CLR VIA C# 阅读笔记和感悟(三)

前言:如今.NetCore已经进入了2.1版本,但这本书的学习还是很重要,我们继续学习和总结,以便于在.NetCore新技术的学习上能有个对比,帮助我们学习新知识。线程池:线程的创建和销毁都是要消耗资源的,所以微软为了优化线程的使用,提出了线程池,线程池中的线程是可重用的,在线程初始化、程序启动时,会根据CPU的核数量创建默认数量的线程,这些线程中有一个主线程一直处于活跃状态,以便程序能够响应,多...

2018-05-31 20:58:08 251

原创 CLR VIA C# 阅读笔记和感悟(二)

GC垃圾回收:垃圾回收机制其实是对内存的碎片化管理,首先会暂停所有线程的执行,防止碎片化管理时,对象的状态被修改,然后遍历托管堆中的所有对象,删除没有变量引用的对象,并且移动堆中的所有对象的内存地址,删除对象之间的空隙,变成一块连续的内存,提高对象的引用效率,节省更多的内存空间,但这会导致之前变量保存的地址失效,因为之前保存的地址不再是是对象的起始地址了,所以CLR会根据堆中对象移动的偏移量修改之...

2018-04-27 23:26:51 134

原创 CLR VIA C# 的阅读笔记和感悟(一)

写在前面的话:        工作一年了,从最初的小白,通过慢慢地做项目,百度查资料,慢慢地也适应了程序员的工作,从最初做项目的焦头烂额,到现在已经可以较为轻松得从事开发工作,当然还是停留在简单开发的层次,就是根据项目需求,查询相关技术文档现学现卖,不过项目倒是做得还算成功,没有出现多大问题,也学会使用IOC、AOP技术对项目进行合理性的分层来保证层之间架构的清晰性,职责单一高内聚低耦合,开闭原则...

2018-04-15 00:07:02 163

深入理解Nginx

本书是阿里巴巴资深Nginx技术专家呕心沥血之作,是作者多年的经验结晶,也是目前市场上唯一一本通过还原Nginx设计思想,剖析Nginx架构来帮助读者快速高效开发HTTP模块的图书。本书首先通过介绍官方Nginx的基本用法和配置规则,帮助读者了解一般Nginx模块的用法,然后重点介绍如何开发HTTP模块(含HTTP过滤模块)来得到定制的Nginx,其中包括开发一个功能复杂的模块所需要了解的各种知识,如Nginx的基础数据结构、配置项的解析、记录日志的工具以及upstream、subrequest的使用方法等。在此基础上,综合Nginx框架代码分析Nginx的架构,介绍其设计理念和技巧,进一步帮助读者自由、有效地开发出功能丰富、性能一流的Nginx模块

2019-05-03

Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版)

Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版)

2019-05-03

TCP-IP详解卷3

本书全文以及有关T / T C P的文献中,事务一词的含义都是指客户向服务器发出一个请求,然后服务器对该请求作出应答。I n t e r n e t中最常见的一个例子是,客户向域名服务器( D N S )发出请求,查询域名对应的I P地址,然后域名服务器给出响应。本书中的事务这个术语并没有数据库中的事务那样的含义:加锁、两步提交、回退,等等。

2019-05-03

TCP-IP详解卷一:协议

很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但T C P / I P协议族允许它们互相进行通信。这一点很让人感到吃惊,因为它的作用已远远超出了起初的设想。T C P / I P起源于6 0年代末美国政府资助的一个分组交换网络研究项目,到9 0年代已发展成为计算机之间最常应用的组网形式。它是一个真正的开放系统,因为协议族的定义及其多种实现可以不用花钱或花很少的钱就可以公开地得到。它成为被称作“全球互联网”或“因特网( I n t e r n e t )”的基础,该广域网(WA N)已包含超过1 0 0万台遍布世界各地的计算机

2019-05-03

空空如也

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

TA关注的人

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