自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Harlan的专栏

智慧生活源于每一个技术奉献人

  • 博客(41)
  • 资源 (4)
  • 收藏
  • 关注

原创 分布式数据库ID生成方案汇总

本文只是简单介绍一下每种分布式ID生成器常用的集中方案

2022-08-22 20:06:39 607 1

原创 HTTP/2 在 REST API 的优势

HTTP/2一出生以来就会给REST API提供很多的新特性,包括集成方便,物联网以及性能、安全等重大特性。

2022-07-20 19:48:06 785

原创 MySQL 双主结构方案优缺点总结

双主mysql 架构方案,尽量保证mysql版本一致

2022-03-04 13:40:59 7147 1

原创 产品灰度发布

如果软件要在不久的将来推出一个全新的功能,或者做一次比较重大的改版的话,要先进行一个小范围的尝试工作,然后再慢慢放量,直到这个全新的功能覆盖到所有的系统用户,也就是说在新功能上线的黑白之间有一个灰,这种方法也通常被称为灰度测试。类似于我们通常所说的内测。

2021-12-13 14:49:41 1179

原创 .NET5 Web API 部署到Centos7.5详解

这两天抽出了点时间写了一个.NET5 Web API及部署到Centos7.5 上,是为了我验证Kestrel在IIS和Centos 7.5 上的性能差异,从而为自己下一个项目打下基础层代码。这篇内容中我重点讲一下,.NET5 部署到Centos7.5 上的基本方式和步骤:开始前提是有一台Centos 7..5服务器一. 在Centos 7.5 上安装dotnet运行环境 可以查看微软官方教程:https://docs.microsoft.com/zh-cn/dotnet/core/in...

2021-04-28 16:37:23 1852

原创 Chromely 一个全新的.NET / .NET Core HTML5 Chromium桌面框架

Chromely是一个轻量级替代Electron.NET,对.NET / .NET的开发人员无疑是一种新的福音。

2021-03-24 14:14:35 1081 2

原创 一个域名对应多个IP地址和DNS优缺点

前段时间实际运行的项目中每天特定的时间对于原本一个域名指向的服务器访问量会暴增,虽然我们通过nginx在该服务器中已经做了负载均衡,但是也不能很好的解决访问量暴增的情况,后面思考实际使用了DNS解析的负载均衡来充当多个用户可访问的点,这样以来通过观察做到了很好的用户在暴增那个时间的分流,目前已经很好的解决该实际问题,现在这里做个简单的记录。

2021-03-16 19:20:49 1708

原创 App扫码登录解决方案

在我们平时使用的Web或是其他应用程序,用对应的APP扫码登录的功能已经很常见了,这种就是简化用户输入账号和密码登录的一种互联网式的操作,如何实现这个功能,现总结整体解决方案如下:...

2020-01-06 14:10:50 1603

原创 RBAC权限体系设计简单说明

RBAC目前使用最为广泛的权限模型,本文通过平常工作及工作外的积累,整理了几种比较经典的权限体系,希望对大家有所帮助!一、什么是RBACRBAC(基于角色的权限控制)模型的核心是在用户和权限之间引入了角色的概念。取消了用户和权限的直接关联,改为通过用户关联角色、角色关联权限的方法来间接地赋予用户权限(如下图),从而达到用户和权限解耦的目的。组成部分:用户,角色,权限,用户角色关系,...

2019-11-21 10:04:14 1190

原创 C# 通过Html Agility Pack实现快速解析Html

现在越来越多的场景需要我们使用网络爬虫,抓取相关数据便于我们使用,今天我这篇文章主要讲一下C# 中通过HAP(Html Agility Pack)高效、快速的解析我们得到的html数据。

2019-11-18 16:06:05 835

原创 利用Nginx设置防爬虫策略及代理访问

我们在平时Web应用系统开发中,为了网站的爬虫可以提升网站排名,比如百度蜘蛛。但有些爬虫对服务器恶意获取网站信息,不遵守robots规则,我们需要进行拦截。可以禁止某些User Agent抓取网站。本篇文章主要介绍一些基本的nginx 下的设置来提高系统可用性.一. 新建配置配置文件(例如进入到nginx安装目录下的conf目录,创建: agent_deny.conf)#禁止Scra...

2019-08-10 16:43:37 1758

原创 Windows下用Nginx配置https服务器

一、安装OpenSSL先到http://slproweb.com/products/Win32OpenSSL.html去下载OpenSSL(根据系统选择32位或者64位版本下载安装)。然后安装在C:\OpenSSL-Win64下。然后配置环境变量。在系统环境变量中添加环境变量:变量名:OPENSSL_HOME变量值:C:\OpenSSL-Win64\bin;(变量值为OP...

2019-08-06 11:25:16 1330

原创 Web 应用中CSRF与XSS的关系与预防

CSRF 跨站伪造请求,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同,XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。

2019-08-01 10:35:55 230

原创 HTML5 IndexedDB本地存储介绍

在开始介绍IndexedDB之前我先简单说一下Web SQL Database一、indexedDB为何替代了Web SQL Database?跟小朋友的教育从来没有什么“赢在起跑线”这种说法一样,在前端领域,也不是哪来先出来哪个就在日后引领风骚的。HTML5 indexedDB和Web SQL Database都是本地数据库数据存储,Web SQL Database数据库要出来的更早...

2019-07-30 18:25:27 1661

原创 nginx基本设置预防常见攻击

信息安全的三要素:保密性、完整性和可用性中DoS(Denial of Service)即拒绝服务攻击,针对的目标正是“可用性”。该攻击方式利用目标系统网络服务功能缺陷或者直接消耗其系统资源,使得该目标系统无法提供正常的服务。

2019-07-29 15:39:10 1177

原创 Centos7.5 下Nginx配置SSL支持https访问

Centos7.5 下Nginx配置SSL支持https访问基本操作方法及步骤如下:核心配置:• 通过指定由受信任的证书颁发机构(CA)颁发的有效证书,将服务器配置为侦听端口上的HTTPS流量。• 通过配置nginx.conf文件来加强安全性。示例包括选择更强大的密码,并将所有流量通过HTTP重定向到HTTPS。• 添加HTTP Strict-Transport-Security...

2019-07-25 11:54:42 1370

原创 Tengine介绍说明第一个实例

Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

2019-06-06 10:23:57 852

原创 HTTP2和HTTPS介绍说明

作为一个经常和web打交道的程序员,了解这些协议是必须的,本文就向大家介绍一下这些协议的区别和基本概念,文中可能不局限于前端知识,还包括一些运维,协议方面的知识,希望能给读者带来一些收获,如有不对之处还请指出。

2019-06-04 11:02:46 5970 1

原创 浅谈分布式日志记录收集中心Elasticsearch+ExceptionLess使用

系统架构方案中访问、操作日志的记录非常关键,他可以让我们快速发现系统存在异常的服务,同时通过用户的操作访问可以对数据做深度分析,从而提取出更优需求的产品功能。随着系统各微服务的数量的增多,系统业务逻辑的增多,平台产的日志数据量也在成倍数增长,所以传统的Nlog和Log4net已经不能满足实际需求。

2019-05-30 16:10:59 2069

原创 .Net Core2.1使用Docker运行实例

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Windows 、Linux 机器上,也可以实现虚拟化。基于这一点我今天主要把自己在.Net Core2.1和.Net Core 2.0中从开发一个简单Demo到发布并到Docker中运行过程在这里简单说明一下:一、新建一个 ASP.NET Core 2.1 项目然后编译运行一下刚创建...

2019-05-10 11:20:24 847

原创 亲自破解验证Navicat Premium 12.1.18最新版破解方法

Navicat Premium 12.1.18最新版破解方法操作总结如下:一.相关软件包准备:链接破解文件:https://pan.baidu.com/s/1wHxKzYb3MWGZe-Z7K9re6w提取码:x9zz

2019-05-07 13:51:18 5319 1

原创 Mysql数据快速备份和恢复方法总结

说到数据库备份很多人可能会立刻想到用mysql连接工具Navicat可以实现轻松备份,确实这是一种最基本的备份和恢复数据的方法但是很多场景下比如表的数据量比较大,用连接工具不管是导出还是导入都会耗时比较长所以在这种场景下就需要用到下面这个流程方法,可以帮助你对于大型数据表、数据库快速备份和恢复。效率相比之下至少是链接工具导出、导入的20倍以上. 好了具体的操作流程如下(前提:Mysql安装上Win...

2019-04-28 17:04:03 4456

原创 Vue单页应用页面刷新时保留状态数据

在Vue单页应用中,如果在某一个具体路由的具体页面下点击刷新,那么刷新后,页面的数据状态信息可能就会丢失掉。这时候应该怎么处理呢?如果你也有这个疑惑,这篇文章或许能够帮助到你解决实际问题。

2019-04-19 11:07:40 2075

原创 BEM规范介绍说明

经常我们在给一个大型网站写页面的css时候,经常会出现如下的css编写效果。但是现在有一个前端定义的规范BEM出现了,它的出现让我们对于class 的定义更加清晰和规范。同时也给我们团队开发提供了高可读性基础.

2019-04-17 20:33:17 659

原创 .NET Core Community 爬虫 DotnetSpider

一、前言目前市场上爬虫框架有很多,不同语言不同类型的爬虫框架都有,然而在开发预研的时候对于选择那种框架对于很多开发者来说尤为头疼;本篇主要总结一下市场上主流的开发语言中有哪些主流的爬虫框架,以及爬虫框架的优劣;希望在对你在选择合适爬虫框架中有所帮助。二、主流语言爬虫框架列表常用爬虫框架列表C# Java PYTHON PHP C/C++ Dotn...

2019-04-03 13:57:28 622

原创 标准WebAPI基本维度保障安全开发规范总结

一个标准的API接口开发需要从以下几个维度考虑保障其安全性:1.有调用者身份2.请求的唯一性3.请求的参数不能被篡改4.请求的有效时间在刚接触接口开发时,可能脑子里压根就没有这个接口调用安全性的原则,但常识性的经验告诉我们,每一个请求都应该有原则地保障安全性。举一个简单例子:例如这个接口 http://127.0.0.1/api/user/list?type=value 这个获...

2019-03-21 11:53:42 669

原创 Windows Server2008 R2系统IIS下设置特定文件不缓存

问题现象Windows系统服务器通过IIS搭建的网站,如何设置特定文件不缓存?常见的就是我们在Webpack 下打包总是不想*.html文件作为唯一入口存在缓存,下面这个就是在Windows系统服务器上的解决方案解决方案1,在IIS管理器下点击该文件的文件夹并切换到内容视图。选中需要添加的的特定文件2.选中要设置的特定文件(这里选择index.html),右键切换到功能视图,这...

2019-02-16 15:48:19 2338

原创 预加载 Skeleton Screen(骨架屏)介绍

用户体验一直是前端开发需要考虑的重要部分,在数据请求时常见到锁屏的loading动画,而现在越来越多的产品倾向于使用Skeleton Screen Loading(骨架屏)替代,以优化用户体验。

2019-02-14 13:59:30 618

原创 k8s和Docker关系简单说明

最近项目用到kubernetes(以下简称k8s,k和s之间有8个字母)。虽然之前也有简单使用过,但最近发现k8s概念较多,命令也有些不够用了,故想借此机会写点东西,更全面认识并使用k8s。本篇文章目的:让你更全面了解k8s概念,以及学到在工作中常用的操作。整体更偏向于原理和应用。在正式开始k8s之前,我们先看看k8s和Docker的关系,分别从虚拟化角度、部署方式角度叙述why use容器,话不多说,开干。

2019-01-28 17:24:02 172406 43

原创 Web应用网站CDN加速访问技术原理

CDN全称Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。

2019-01-10 15:35:02 985

原创 .Net Core2.0 WebAPI部署到Ubuntu 16.04系统详解

接触研究.Net Core已经有一段时间了,在完成了基础代码的功能联调如:Ocelot API、.NetCore EF等,今天完成了在Ubuntu16.04上部署.Net Core 2.0运行。下面将详细记录本次全新环境部署需要的步骤:.Net Core跨平台运行在Ubuntu 16.04上核心下面三步:.Net Core 安装配置 Nginx反向代理服务器安装配置(相当于Windows...

2018-11-29 14:46:40 2443

原创 .NET Core中的使用Kestrel服务器理解

Kestrel是一个基于libuv的跨平台.NET Core web服务器,libuv是一个跨平台的异步I/O库。ASP.NET Core模板项目使用Kestrel作为默认的web服务器。Kestrel支持以下功能:HTTPS 用于启用不透明升级的WebSockets 位于Nginx之后的高性能Unix socketsKestrel 被.NET Core支持的所有平台和版本所支持...

2018-11-29 10:38:37 4689

原创 Android四大组件介绍

Andorid 的开发过程中四大基本基础组件分别为activity、service、contentprovider、broadcast receiver。下面简单介绍每种组件使用情况.Android四大组件详解1、activity(1)一个Activity通常就是一个单独的屏幕(窗口)。(2)Activity之间通过Intent进行通信。(3)android应用中每一个Acti...

2018-11-16 15:17:28 210

原创 Chromium Embedded Framework基本用法及理解

CEF简介:     嵌入式Chromium框架(简称CEF) 是一个由Marshall Greenblatt在2008建立的开源项目,它主要目的是开发一个基于Google Chromium的Webbrowser控件。CEF支持一系列的编程语言和操作系统,并且能很容易地整合到新的或已有的工程中去。    它的设计思想政治就是易用且兼顾性能。CEF基本的框架包含C/C++程序接口,通过本地库...

2018-11-12 14:21:42 10361

原创 Service Worker身份理解

Service的意思是服务,Worker的意思是工人,那么Service Worker的意思就是服务员。这个员工是2014年6月HTML5新招的实习生,目前在试用中。在此之前,已经有一位老员工,它叫Web Worker。那么问题来了,Boss是谁?Boss就是浏览器。准确来说,每个页面的javascript运行主线程都是一个Boss。

2018-09-18 17:13:35 323

原创 使用Service Worker发送Push推送

这一篇我主要是想将介绍怎么用Service Worker发送Push(Notification)或者叫web push。Web push在国外的网站很流行,但在国内几乎没见到,主要还是因为谷歌在境内无法访问,因为web push走的是谷歌FCM通道,需要能接收到谷歌服务器的消息。但正常网络环境下是无法访问谷歌的,如果需要正常访问需要对应的服务端服务器运行在可以访问到谷歌的网络服务器上。1. 发...

2018-09-12 17:07:58 2981

原创 Web Push功能使用

本文主要介绍H5的桌面通知和web push,H5的Notification主要用于向用户展示通知,而web push 主要用于订阅推送消息。

2018-09-05 18:48:09 4546

原创 使用 HTML meta 标签来禁用缓存

如何完美滴使浏览器访问一个 HTML 页面时禁用缓存?在测试某个 Web应用程序项目时,发现更改后 Chrome 浏览器页面刷新还是使用之前的版本。经调试发现 Chrome 默认缓存值为 300 秒。经测试跨浏览器禁止缓存的 headers 如下:Cache-Control: no-cache, no-store, must-revalidatePragma: no-cacheE...

2018-08-28 20:16:22 14219

原创 分布式服务注册和发现consul

Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,Consul的方案更"一站式",内置了服务注册与发现框 架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等)。使用起来也较 为简单。Consul用Golang实现,因此具有天然可移植性(支持Linux、windows和Mac OS X);安装包仅包含一个可执行文件,方便部署,与Docker等轻量级容

2018-07-24 14:21:33 380

原创 Electron 使用原理的认识(使用 JavaScript, HTML 和 CSS 构建桌面应用)

Electron 原理Electron 是一个开放源代码的项目, 由Cheng Zhao AKA zcbenz开发,他现在是 Github 北京 Atom 编辑器开发 team 的一名工程师。Electron 把 Chromium 和 Node 合并到一个单独的运行时里面,很适合开发桌面 web 形式的应用程序,通过Node它提供了通常浏览器所不能提供的能力。 在这之前,Zhao主要进行no...

2018-07-20 10:49:17 2465

tableExport导出Excel/PDF/PNG/SVC/XML/JSON方法扩展

tableExport导出Excel/PDF/PNG/SVC/XML/JSON方法扩展,其中增加解决了Excel 按照页面样式导出、PDF中文乱码问题。PNG图片导出错误,缓慢的问题。

2018-01-22

C#+SQL2000学生宿舍管理系统

这个源码中主要涉及了C#+SQL2000共同作用对学生宿舍信息的一个管理。

2009-11-09

VC++ 学生信息管理系统!

gai该系统是用C++和SQL数据库共同协同完成,是一个很不错的管理学生信息的系统!

2009-10-19

现代软件工程---张家浩主编 课件PPT

此课件包涵了此书的所有内容,希望能给读者一些帮助!

2009-07-02

空空如也

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

TA关注的人

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