自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yan_dk的专栏

博采众长,不必拘执,持续改进完善

  • 博客(261)
  • 资源 (9)
  • 收藏
  • 关注

原创 软件开发自由职业者,疫情时代~不老常青藤

本人具有国内一线互联网软件公司从业经历,20年软件开发经验,3年多自由职业者从业经验,负责多个领域的全栈项目开发,涉及企业网站、ERP、CRM、电商、移动app、微信小程序、网络数据采集等。讲课内容贴合实际,施之于鱼不如授之于渔,注重技巧、实战、经验传授,助力您在互联网职场竞争中保持优势。 笔者自身从事自由职业者,经历较多软件项目、客户及丰富的实战经验,并取得一定收获和成绩,带着满满的干货,讲述自由职业从业经验,课程融入国学、棋道、兵法、太极之道等,全面解析软件开发及自由职业,...

2022-02-11 14:13:14 1037

原创 GoLang之统一框架

GoLang语言开发,有beego、gin等框架,gin框架使用较多,笔者也较为熟悉。gin框架提供的是基础框架,对于如何封装框架gin框架没有做固定的要求,我们在go程序开发中对它进行的封装也有很多不同的方法,笔者看到的很多golang的gin框架封装代码的可以说千差万别、各自为阵,有些封装的也冗余太多,不够精简和统一,其实让我们更加清晰的看懂和进行加入团队进行开发的框架结构,决定了我们的开发效率,如果很多差异太多的框架封装,往往会占用我们很多学习成本。

2021-06-10 17:13:51 1024 2

原创 成功处理挖矿病毒劫持,crontab注入顽固脚本,cpu、内存飙升

本人的linux centos服务器被挖矿病毒劫持有几个月了,crontab 顽固脚本一直占用,删除也删除不了,cpu、内存一直被长期占用,真是非常痛苦。最近花了几天时间研究,终于成功处理了。cpu、内存也平稳运行了,心情轻松了很多。 有需要技术支持解决问题的朋友,可以联系我。手机:18034263356...

2020-08-30 09:17:07 2056

原创 Lua入门及技术指南之1

1. Lua基本介绍为什么要使用lua Nginx官方自带了非常多的核心模块再加上第三方的模块能够满足我们大部分的业务需要,但是业务的需求、业务的场景变化需要添加些额外的功能,如果自己去开发一个nginx模块相对来说比较笨重,我们可以使用lua脚本直接内嵌到nginx当中实现一些业务逻辑,完成一些特殊的功能需求。入门Lua开发者:http://www.luaer...

2019-04-28 20:37:05 644

原创 Redis入门及技术指南之1

初识Redis参考素材Redis官网:http://www.redis.net.cn/在线官方文://档:http://doc.redisfans.com/参考文档:《redis实战.pdf》辅助工具在线测试:http://try.redis.io/ (用于redis各种命令测试,可以熟悉和了解命令写法)Php安装Redis扩展Windows系统首先phpinfo...

2019-04-23 16:24:16 172

原创 Docker构建Redis集群(使用Docker-Compose)

安装Docker参考:https://blog.csdn.net/yan_dk/article/details/89427641安装Docker-ComposeDocker-Compose简介 Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的...

2019-04-23 09:51:38 3945 1

原创 Docker入门及技术指南

初识Docker参考文档《docker 从入门到实践.pdf》《第一本Docker书 完整版.pdf》版本Docker 分为 CE 和 EE 两大版本。CE 即社区版(免费,支持周期 7 个月),EE 即企业版,强调安全,付费使用,支持周期 24 个月。手册帮助:http://www.runoob.com/docker/docker-tutorial.html ...

2019-04-23 01:12:08 611

原创 Swoole手工打造IM通讯服务器案例

1. IM通讯服务器案例分析1.1 需求分析 本案例是通过在建项目为原型,主要通过设计搭建一个IM通讯服务器做案例,抽取核心的逻辑,旨在更好的掌握设计良好、高性能的IM通信服务器的原理,为今后的项目开发及应用积累更多的经验素材。 QQ,Msn等都是IM通信服务器经典软件。要搭建一个这样的类似IM服务器,需要承载大量的客户端要向IM服务器发送通信请求,必然要考...

2019-04-22 17:44:15 682

原创 Swoole学习-Swoole入门指南

初识SwooleSwoole官网:https://www.swoole.com/Swoole官方文档:https://wiki.swoole.com/ 预备相关知识素材推荐入门书籍:《tcp/ip网络编程(尹圣雨 韩)》。 深入书籍:《unix环境高级编程(中文第三版)》;《unix网络编程卷1:套接字联网》;《unix网络编程卷2:进程间通信》。版本已更新至4....

2019-04-22 17:05:02 7832

原创 谈谈连接池概念原理及使用方面的看法

1. 连接池介绍 关于“池“,我们可能遇到连接池、进程池等,池的原理都是相近的,连接池比如有数据库连接池、Redis连接池。我们以数据库连接池(Connection pool)为例,讲解一下连接池原理。为什么要使用连接池? 传统的数据库连接,没有使用连接池,客户端连接到数据库服务器,每连接一次就建立一个连接,如果在客户端访问量大的时候,数据库服务器建立的连接数...

2019-04-22 13:43:43 296

原创 谈协程与Swoole框架的相关应用

1. 协程介绍1.1 什么是协程 协程(Coroutine)也叫用户态线程,其通过协作而不是抢占来进行切换。相对于进程或者线程,协程所有的操作都可以在用户态完成,创建和切换的消耗更低。协程是进程的补充,或者是互补关系。 要理解是什么是“用户态的线程”,必然就要先理解什么是“内核态的线程”。 内核态的线程是由操作系统来进行调度的,在切换线程上下文时,要先...

2019-04-20 17:54:34 1098

原创 nodejs版本管理实践指南

nodejs版本管理实践

2022-09-03 11:09:48 1000 1

原创 uniapp开发移动端上传指南

介绍Uniapp是 DCloud公司于2012年开始研发的能够一次代码开发,生成H5、小程序(微信、支付宝、百度、华为等)、APP等应用的技术的统称,开发工具是HBuilderX,功能非常强大,由此引申出许多技术社区与生态环境。引言Uniapp开发移动端上传,需要前端、后台接口的配合,是比较常见和通用的需求场景,包括许多细节的实现,如:前端上传页面ui,选择文件(图片或视频等),选择时上传文件大小的判断、上传状态的设定,上传后调用后台服务器上传接口上传到服务器,上...

2022-05-04 21:20:37 3362 3

原创 uniapp多端开发技术解析

介绍 Uniapp是 DCloud公司于2012年开始研发的能够一次代码开发,生成H5、小程序(微信、支付宝、百度、华为等)、APP等应用的技术的统称,开发工具是HBuilderX,功能非常强大,由此引申出许多技术社区与生态环境。参考uni-app官网https://uniapp.dcloud.io/uView 2.0 - 全面兼容nvue的uni-app生态框架 - uni-app UI框架uView UI,是uni-app生态最优秀的UI框架,全面的组件和便捷的工具会...

2022-05-04 15:05:10 5702

原创 JWT机制原理及实战指南

介绍JWT,JSON Web Token,开放的、行业标准(RFC 7519),用于网络应用环境间安全传递声明。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的业务逻辑所须的声明信息。特点:跨语言:支持主流语言自包含:包含必要的所有信息,如用户信息和签名等易传递:很方便通过HTTP头部传递具体来说:JWT 默认是不加密,但也是可以加密的。生成原始 Token 以后,可以用密钥再加密一次JWT 不加密的情况下,不能

2022-05-02 20:10:14 955

原创 Vuex之store原理及使用指南

介绍Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。引言Vuex的store组件,主要存储应用中的状态,具体应用中如何来用呢?存储我们也可以使用缓存比如uni.setStorageSync(...) uni.getStorageSync(),来存储应用级的状态,也可以实现相应需求。单纯缓存数据可能并不能很好满足一定的业务场景,而且缓存数据是多样化的,状态的交互在应用中存在很多,不同模块间互

2022-05-02 18:13:38 6022 1

原创 Typescript入门及指南

绍TypeScript是微软开发的一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成。TypeScript通过TypeScript编译器或Babel转译为JavaScript代码,可运行在任何浏览器,任何操作系统。TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准(ES6 教程)。TypeScript 由微软开发的自由和开源的编程语言。TypeScript 设计目标是开发大型应用,它可以编译成纯 JavaScript,

2022-04-27 21:12:57 1312

原创 GoLang-Gin框架之自动路由封装

Gin框架封装了基础框架,给开发人员带来了很多方便,但是具体项目中,如果只使用Gin框架原生的来开发,还是有些单薄,如Gin的路由,写法比较冗长,如果开发项目,代码量过多,冗余重复代码比较多,看起来逻辑不够清晰,我们经过一些封装可能就比较简单清晰,我们就可以专注于业务逻辑的实现来编码了。

2022-04-26 00:23:29 4488 2

原创 Go admin&ui集成组件的安装及使用指南

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2022-04-13 09:20:44 1115

原创 web3+区块链 入门及技术指南

web3.js开发环境安装安装nodejs,参考Nodejs入门及技术指南_yan_dk的专栏npm 安装web3$ npm install web3 --save检测是否安装成功$ node>require("web3")显示如下:说明web3.js已经安装成功。安装testrpc(在本地使用内存模拟的一个以太坊环境)>npm install ethereumjs-testrpc -g安装成功后,启动testrpc 区块链节点>test

2021-12-02 10:49:12 27646 9

原创 Git入门及技术指南

初识Git Git是一个分布式的版本控制系统,作为开源代码库以及版本控制系统,Github目前拥有很多开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。 GitHub可以托管各种git库,并提供一个web界面,但与其它像 SourceForge或Google Code这 样的服务不同,GitHub的独特卖......

2021-11-27 22:32:34 6019

原创 Uniapp入门及技术指南

uni-app是一个使用Vue.js开发小程序、H5、App的统一前端框架。官网地址:https://uniapp.dcloud.io安装IDE工具环境HBuilder开发工具HBuilder,下载地址HBuilderX-高效极客技巧:HBuilderX-高效极客技巧HBuilderX是当前最快的HTML开发工具,强大的代码助手帮你快速完成开发,最全的语法库和浏览器兼容性数据让浏览器碎片化不再头痛https://www.dcloud.io/hbuilderx.html:下载后,安装...

2021-10-24 23:29:56 450

原创 laravel框架之模型

介绍 MVC模式中的Model模型,就是一个快速操作数据库(准确的说是对应的数据表,一个模型对应一个数据表)的方法,可以利用模型加上一些自己想要的操作对数据表进行快速操作。如查找特定的记录,增删查改都可。很多语言(Java、Go)都会提供Model的封装,Java有Hibernate,Go的Gin框架的Gorm等,这些封装的提供了接口方法来实现MVC程序逻辑。laravel框架提供的一套Model机制,很多方面值得学习,模型是laravel框架很重要的基础,Eloquent ORM组件提供...

2021-06-18 00:19:09 1236 3

原创 laravel之实现秒杀

介绍 秒杀多用在电商中,秒杀、抢购、抢票等实现特定需求场景,都可以归为一种资源争用模式,要保证交易的安全性、可靠性,实现方法较多。先看下秒杀的特点、逻辑。 秒杀特点:抢购人数远多于库存,读写并发巨大 库存少,有效写少 写需强一致性,商品不能超卖 读一致性要求并不高 秒杀逻辑: 1.获取秒杀抢购数据信息 ⒉.校验抢购商品的信息,主要商品类型,库存,上下架,时间进行校验 ...

2021-06-16 20:26:43 961 4

原创 linux时间同步

介绍 linux作为服务器使用时,时间保持正确同步很重要,比如秒杀等场景,用到系统时间如果不精确,到了准点了,秒杀没有及时开始、结束,大家对系统就很不信任。所以部署服务器时,我们必须将系统时间调整准确,随时都要准确。参考Linux系统时间同步方法小结:https://www.cnblogs.com/williamjie/p/10768657.html方法本人以linux,centos7为例,进行如下步骤。安装ntpdate工具# yum install -...

2021-06-16 15:22:43 448

原创 laravel之rabbitmq组件使用

介绍 laravel入门及技术指南,参见相关文章。laravel集成使用消息中间件rabbitmq,提供服务器异步消息处理,提升服务器性能。下面谈谈如何安装及集成使用。安装代码集成.env文件...#laravel默认连接为sync,改为rabbitmq QUEUE_CONNECTION=rabbitmq#增加rabbitmq QUEUE_DRIVER=rabbitmqRABBITMQ_HOST=172.17.0.3RABBITMQ_PORT=567...

2021-06-15 18:17:47 2561 2

原创 GoLang之开发常用技巧积累

介绍 goLang开发常遇到一些问题,或者使用中的技巧,逐步积累,以便在开发中方便查找使用。参考golang自动生成setter和getterhttps://www.cnblogs.com/xdao/p/go_accessor.htmlgo语言入门及技术指南https://blog.csdn.net/yan_dk/article/details/110557155技巧汇集注:本人经常使用IDE工具为goland,下文都以此环境为例。经常查阅G...

2021-06-14 13:47:46 561 1

原创 laravel之laravels组件构建Redis连接池

介绍 laravel框架入门可参见(《laravel入门及技术指南》https://blog.csdn.net/yan_dk/article/details/117375890),laravel结合swoole,可以实现高性能Http服务,提升应用性能。hhxsv5/laravel-s是第三方的组件包,我们可以安装使用。可参见(《laravel之laravel-s组件技术指南》https://blog.csdn.net/yan_dk/article/details/117867961)...

2021-06-13 20:13:58 1119

原创 laravel之laravel-s组件技术指南

介绍 laravel框架入门可参见(《laravel入门及技术指南》https://blog.csdn.net/yan_dk/article/details/117375890),laravel结合swoole,可以实现高性能Http服务,提升应用性能。hhxsv5/laravel-s是第三方的组件包,我们可以安装使用。参考Laravel6使用hhxsv5/laravel-s实现高性能Http服务https://blog.csdn.net/php12345679/ar...

2021-06-13 09:44:58 915

原创 docker之apt-get update解决方法

问题 使用docker生成容器后,进入容器后,提供的指令很少,使用apt-get组件进行扩展,但是会遇到apt-get update有时会失败的问题。参考创建好docker后不能apt-get update解决方法https://blog.csdn.net/TJH_I_CAN/article/details/80812022?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-1&spm=1001....

2021-06-08 00:55:16 5413

原创 docker搭建ngnix+php

介绍 我们应用中往往会需要不同的应用服务器环境,如果服务器中已经有应用程序在运行了,如果用原有的环境可能不能满足需求,如果覆盖安装新环境,会影响服务器原有程序正常运行。比如我要新建一个php7.3的应用,而现在环境是7.1。比较好的方式是使用docker重新搭建,我们常见nginx,nginx本身不能解析php,需要再安装新的php,做好fastcgi的对应php解析,才能正常运行php程序。下面我们用docker来搭建一下这个环境。参考https://blog.csdn....

2021-06-08 00:51:46 382 2

原创 GoLang之网络并发编程

介绍并发:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。网络程序性能比较差、网络流量高时容易发生并发问题。并发涉及进程、线程的执行,以及CPU对进程、线程的调度等问题,如果没有控制好并发的应对处理,可能造成程序执行错误(如超卖、支付数据错误等严重问题),也会造成网站系统瘫痪等问题。因此并发问题需要对程序的优化、系统调优处理。Go语言自身性能优良、以及提供协程、消息队列等特性,可以有效应对并发问

2021-06-06 20:47:02 156

原创 GoLang之网络基本编程

介绍网络通信:就是两个程序(我们称为客户端、服务端)通信方式。网络通信协议:就是通信约定的规范协议(tcp/udp/websocket/http)。Tcp: 传输控制协议(TCP,Transmission Control Protocol),是一种面向连接(连接导向)的、可靠的、基于字节流的传输层(Transport layer)通信协议,因为是面向连接的协议,数据像水流一样传输,会存在黏包问题。场景:短信、聊天Udp:用户数据报协议(UDP,User Datagram Protocol

2021-06-06 11:17:06 195

原创 kafka入门及技术指南

介绍 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。主要应用场景是:日志收集系统和消息系统。1. kafka具备吞吐量大无限扩容的特点,相比起同类,它更适合需要无限扩容, 吞吐量要大(并发量很大) 的场景,比如日志大数据等。 2. 本来...

2021-06-05 18:52:32 442 1

原创 GoLang之RPC学习及技术指南

介绍RPC 原理示例1(简单通信)RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。RPC原理及调用步骤 了解完了RPC技术的组成结构我们来看一下具体是如何实现客户端到服务端的调用的。实际上,如果我们想要在网络中的任意两台计算机上实现远程调用过程,要 解决很多问题,比如: 两台物理机器在网络中要建立稳定可靠的通信连接。 两台服务器的通信协议的定义问题,即两台

2021-06-04 00:46:54 296

原创 laravel之认证组件auth

准备laravel基础和环境搭建可以参考《laravel入门及技术指南》https://blog.csdn.net/yan_dk/article/details/117375890

2021-06-02 17:57:35 375 2

原创 laravel框架之数据库

参考https://blog.csdn.net/yan_dk/article/details/117375890

2021-06-01 18:35:16 977 1

原创 laravel之组件dingo、jwt

介绍dingo dingo api包是给laravel和lumen提供的Restful的工具包,它可以与jwt组件一起配合快速的完成用户认证,同时对于数据和运行过程中所产生的异常能够捕获到并且可以做出对应的响应。 主要功能: 1. Router Version 路由版本管理 2. http Exception 异常处理 3. response transform 转化响应格式。 jwt jwt全称JSON Web Tokens ,是一个非常轻巧...

2021-05-30 18:05:52 211 2

原创 laravel入门及技术指南

介绍参考https://learnku.com/docs/laravel/5.7/installation/2242

2021-05-29 11:39:58 1306 1

原创 openresty入门及技术指南

介绍 OpenResty是一个基于Nginx与Lua的高性能web平台,由中国人章亦春发起,其内部集成了大量精良的Lua库、第三方模块以及大多数的依赖项。用于方便搭建能处理超高并发、扩展性极高的动态Web应用、web服 务和动态网关OpenResty简单理解成就相当于封装了NGINX,并且集成了LUA脚本,开发人员只需要简单的使用其提供了模块就可以实现相关的逻辑,而不像之前,还需要在NGINX中编写lua的脚本。 安装部署我们在linux环境使用docker...

2021-05-25 18:22:39 283

ofbiz的helloworld例子

ofbiz的helloworld例子,网上不好找到比较全的,这个比较全,可以了解ofbiz的整体架构和运行机制。

2014-05-18

ofbiz研究心得

ofbiz研究心得,对ofbiz的初步研究成果,参考一下

2014-05-18

ofbiz例子practice

ofbiz的例子,practice,可以完整运行。 /ofbiz/practice/control/main

2014-05-18

ofbiz api 中文版

ofbiz api ,强大的开源企业应用平台,中文版api

2014-05-18

mapgis_igserver地图查询实例开发篇.pdf

mapgis_igserver地图查询实例开发篇.pdf

2014-01-27

jquery ui 的api参考资料

jquery ui 的api参考资料 Description: A single content area with multiple panels, each associated with a header in a list.

2013-12-12

PostgreSQL_8.1_中文文档.pdf

PostgreSQL的中文参考手册,您可以详细的了解postgresql数据库的各种语句语法、详细功能介绍。

2013-12-02

线程ThreadLocal机制实现例子

本例以序列号生成的程序为例,展示ThreadLocal的使用

2011-11-10

springmvc简单完整例子

spring的mvc是简单轻量级的框架,优雅、无侵入性。能够快速有效掌握其用法。

2011-10-19

空空如也

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

TA关注的人

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