- 博客(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 1024
原创 dotnetCore源码扩展:自定义ActionResult
前言: 有时候需要再全局对结果进行包装类似如下的返回结果{ code:200, result:{}}而.Net自带的ActionResult自带一些不相关的属性,比如下面这样的,正文为了解决上面的问题,继承ActionResult类并重载 ExecuteResultAsync方法public class MyContentResult : ActionResult...
2019-01-07 13:47:38 2517 1
原创 linux下docker通过挂载数据卷到 mysql实现容器配置本地化
前言:当希望在本地上配置容器中的mysql时,发现一个问题,本地需要完整的配置文件目录,如果本地是空目录,那么容器中的配置目录也是空的所以不能运行镜像,这里解决这个问题,思路是任意运行一个容器,把里面的配置目录复制到本地,然后删除这个容器,再创建新的容器,并把复制出来的配置目录和容器中的配置目录同步,这里记录下这个过程。第一步:创建一个本地配置目录输入命令:mkdir -p /root/D...
2018-11-04 00:52:21 5810
原创 docker 部署 webapi 示例
利用docker的容器化平台来部署一个.net core webapi项目第一步:创建的WebAPI项目可以通过vs创建项目也可以通过dotnet new webapi来创建,示例使用的是命令行创建的,目录如下:第二步:编译通过手动生成项目通过dotnet build生成,也可以vs生成第三步:编写Dockerfile文件注意名称,Dockerfile文件没有后缀,...
2018-10-31 20:50:13 3785
原创 阿里云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 657
原创 阿里云linux 通过docker 使用 mysql
使用容器能够屏蔽一些第三方组件需要的一些依赖,简化繁琐的安装流程,易于管理,这里通过使用MySQL的镜像慢慢熟悉搬运工这里记录下在云环境linux下使用的MySQL遇到的一些坑第一步:下载MySQL的镜像docker pull mysql:latest#:latest表示最新版本通过“:”来指定版本第二步:创建MySQL的容器docker run --name localm...
2018-10-21 23:43:52 520
原创 阿里云 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 588
原创 快速使用阿里云 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 3387
原创 设计模式(一)单例模式
前言:设计模式就是在软件发展过程中,根据类似的一些应用场景,总结并沉淀下来的一套套经典解决方案,分为三大类型:创建型、结构型、行为型,每种类型都针对具体的应用场景给出了不同的解决方案,但设计模式并非万能,有些场景不适用,或者会造成项目复杂度上升。创建单例模式方法一:采用双if+lock的方式保证线程安全,第一个if保证线程在并发时不会进行无意义的等待,lock保证同一时刻只有一个线...
2018-09-17 23:14:27 130
原创 观察者模式中多线程执行订阅事件并顺序执行的问题
对事件发布订阅模式中启动线程执行操作,但又要保证线程顺序执行的一些思考和实践,在开发过程中,经常会遇到需要使用事件来触发方法执行的情况,比如CS中按钮的点击事件,鼠标移动事件,键盘监听事件等等,有时候需要执行比较耗时的任务,但并不希望阻塞主线程,导致界面卡顿,使用线程有不能保证线程像同步的执行顺序一样顺序执行,因为有时候事件是系统触发的所以没有办法等待,所以在这儿记录下这个解决思路。...
2018-09-16 20:02:13 1917
原创 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 3558 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 10082
原创 多线程和锁和原子操作和内存栅栏(二)
这里记录下各种锁的使用和使用场景,在多线程场景开发时,我们经常遇到多个线程同时读写一块资源争抢一块资源的情况,比如同时读写同一个字段属性,同时对某个集合进行增删改查,同时对数据库进行读写(这里要用到事物,数据库锁等知识)等,这里往往为了做到数据的一致性和有效性,需要进行对线程之间的在某一时刻或一小段时间的同步操作,来保证数据安全,不会中途造成数据值读写不准确的情况,这个时候一般情...
2018-08-13 23:09:06 376
原创 多线程和锁和原子操作和内存栅栏(一)
线程的定义是执行流的最小单元,而进程是一个逻辑线程容器,用来隔离线程。Task类封装了线程池线程,启动的所有线都由线程池管理,他提供了很多使用方便的API函数,使多线程开发变得容易。上述代码中我启动了一个线程,并在线程方法中使用了异步关键字,异步方法实现了一个状态机,能够在等待任务完成时继续执行之后的代码,这里利用该特性实现线程顺序执行,并且上述代码使用了ContinueWith方法,这是一个任务...
2018-05-31 22:43:22 2105
原创 CLR VIA C# 阅读笔记和感悟(三)
前言:如今.NetCore已经进入了2.1版本,但这本书的学习还是很重要,我们继续学习和总结,以便于在.NetCore新技术的学习上能有个对比,帮助我们学习新知识。线程池:线程的创建和销毁都是要消耗资源的,所以微软为了优化线程的使用,提出了线程池,线程池中的线程是可重用的,在线程初始化、程序启动时,会根据CPU的核数量创建默认数量的线程,这些线程中有一个主线程一直处于活跃状态,以便程序能够响应,多...
2018-05-31 20:58:08 271
原创 CLR VIA C# 阅读笔记和感悟(二)
GC垃圾回收:垃圾回收机制其实是对内存的碎片化管理,首先会暂停所有线程的执行,防止碎片化管理时,对象的状态被修改,然后遍历托管堆中的所有对象,删除没有变量引用的对象,并且移动堆中的所有对象的内存地址,删除对象之间的空隙,变成一块连续的内存,提高对象的引用效率,节省更多的内存空间,但这会导致之前变量保存的地址失效,因为之前保存的地址不再是是对象的起始地址了,所以CLR会根据堆中对象移动的偏移量修改之...
2018-04-27 23:26:51 153
原创 CLR VIA C# 的阅读笔记和感悟(一)
写在前面的话: 工作一年了,从最初的小白,通过慢慢地做项目,百度查资料,慢慢地也适应了程序员的工作,从最初做项目的焦头烂额,到现在已经可以较为轻松得从事开发工作,当然还是停留在简单开发的层次,就是根据项目需求,查询相关技术文档现学现卖,不过项目倒是做得还算成功,没有出现多大问题,也学会使用IOC、AOP技术对项目进行合理性的分层来保证层之间架构的清晰性,职责单一高内聚低耦合,开闭原则...
2018-04-15 00:07:02 181
深入理解Nginx
2019-05-03
TCP-IP详解卷3
2019-05-03
TCP-IP详解卷一:协议
2019-05-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人