自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 收藏
  • 关注

原创 python 工行e企付、工行签名生成、工行私钥PKCS8转PKCS1例子

现将拼接后的参数,按照编码类型处理为byte数组,使用各自语言对应的RSA签名函数利用商户私钥对待签名字符串进行签名,并进行Base64编码。将筛选的参数按照第一个字符的键值ASCII码递增排序(字母升序排序),如果遇到相同字符则按照第二个字符的键值ASCII码递增排序,以此类推。将排序后的参数与其对.值,组合成“参数=参数值”的格式,并且把这些参数用&字符连接来,此时生成的字符串为待签名字符串。2.工行的签名是需要加上接口的URL,不仅仅是对参数进行加密。

2023-05-10 16:39:39 602 1

原创 Jenkins+gitlab的Webhooks+ssh持续交付

1.配置一个开发者电脑和服务器的的ssh公钥到gitlab这里直接在服务器上拉代码。不通过jenkins拉gitlab代码2.Jenkins加插件Gitlab Hook、Build Authorization Token Root、Publish Over SSH、Gitlab Authentication、Gitlab、Git Parameter3.在jenkins中添加ssh登录项目部署的服务器4.Jenkins配置如图其中关键点五,gitlab配置钩子webhooks...

2022-07-05 17:31:44 273

原创 ORM框架EF的基本使用

介绍EF是微软基于ADO.NET开发的ORM框架。ORM对象关系映射,是将实体对象与数据库数据进行映射。这样不需要写sql,仅仅对实体对象进行修改就可以改变数据库数据。使用引用这个visual studio集成,可以手动添加实体模型增删改查...

2022-02-24 11:21:53 632

原创 基于phantomjs之SVG转png,SVG转图片,网页截图

这里写自定义目录标题为什么我要这样做svg中代码代码效果为什么我要这样做起因是这样的,我把svg图片插入到ppt里面用的好好的,结果没想到在svg里面插入一张图片组成新的svg(网页PS),就over了,为什么要插入ppt,因为我在做一个web端ppt在线编辑。svg中代码<div style='width: 49.8px ;height: 109.3px;'><?xml version="1.0" encoding="utf-8"?><svg version="1

2021-07-21 11:02:40 358

原创 fiddlercore问题解决方案,fidder抓包,抓手机app

1.浏览器提示“您的连接不是私密连接”解决办法:1.手动安装证书,访问你监听端口,比如http://127.0.0.1:8888/直接安装,2.使用代码安装 //证书管理 X509Certificate2 oRootCert = CertMaker.GetRootCertificate(); //创建证书 X5...

2020-03-31 15:17:18 3261 2

原创 windows创建linux集群供外网机器使用 外网机器Xshell访问windows机器里面的虚拟机

难点1.使用虚拟机创建centos集群,配置可使用外网2.其他机器使用Xshell访问windows机器3.其他机器使用Xshell访问windows机器里面的虚拟机使用Hyper-V创建centos集群1.打开方式:Hyper-V是微软自带的虚拟机管理工具,控制面板-> 程序->启动或关闭windows功能->勾选Hyper-V->重启2.创建外部网络...

2019-05-28 16:25:25 268

原创 基于Docker + Go+ Kafka + Redis + MySQL的秒杀已经Jmeter压力测试

业务特点技术点JMeter:用JMeter来模拟秒杀活动中大量并发的用户请求Seckill Service:基于 Go语言使用beego实现的秒杀service,图中的步骤2,3,4都是在这个service中处理的Redis:一个Redis的docker container,在其中保存一个名为counter的数据来表示当前剩余的库存大小Kafka: 一个Kafka的docker con...

2019-05-27 15:38:01 1742

原创 基于Docker + Nodejs + Kafka + Redis + MySQL的秒杀已经Jmeter压力测试

前言偶然在头条看到一篇文章原文,准备自己试一试,由于是几年前的文章,现在按照教程遇到很多坑,花了几天终于填平。业务特点技术点JMeter:用JMeter来模拟秒杀活动中大量并发的用户请求Seckill Service:基于Nodejs使用Express实现的秒杀service,图中的步骤2,3,4都是在这个service中处理的Redis:一个Redis的docker contain...

2019-05-24 14:25:27 1185 1

原创 使用Go语言开发SSO系统beego+jwt

简介SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。机制当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份校验,如果通过校验...

2019-05-15 10:15:31 2739 2

转载 前端面试必备(html、css、js)

作者:苏南South来源:CSDN原文:https://blog.csdn.net/weixin_43254766/article/details/83119712本文为转载文章,可以访问原文做收藏作者: 首席填坑官∙苏南来源:@IT·平头哥联盟交流:912594095、公众号:honeyBadger8 前言 前段时间面试(包括阿里巴巴的电话面试),遇到过一些面试...

2018-12-03 13:51:30 283

原创 FiddlerCore抓取极端数据 net window程序

案例: 模拟器安装app,使用按键精灵翻页查数据,模拟器可以轮换ip,改设备地址,之后截图图像识别来获取数据,目前改版成用抓包获取数据。 为什么不直接写爬虫,这个就不深究了。接下来将FiddlerCore提供的例子研究一下。 贴代码 public partial class Form1 : Form { static Proxy oSecureEndp...

2018-08-14 11:07:19 6436 2

原创 .net core项目linux服务器部署、docker部署、jenkins自动化部署

当你想要使用docker部署.net core项目时候,你应该考虑这些问题 1.docker怎么部署 2.怎么快速部署 3.怎么自动化部署 4.怎么检查日志 5.如果代码使用git或者svn怎么更新代码就可以完成部署 6.定时运行控制台程序项目一.docker怎么部署1.将项目拷贝到服务器中 类似地址是:/var/www/spiderweb/CSHouseWeb2.do...

2018-06-07 14:33:31 5078

原创 使用jenkins自动化部署docke镜像node项目(jenkins、docker、node、码云、git)

简介 最近使用docker部署项目,当代码有更新后,我的操作流程大致是: 1.提交代码 ——&gt;2.copy代码到服务器—–&gt;3.停止、删除docker项目容器—–&gt; 4.删除docker项目镜像—-&gt;5.启动项目镜像、启动容器 这一系列花费我几分钟,一不小心还会出错。经过百度,找到一个自动化部署工具jenkins,最后只需要一次点击就要完成所有操作。本文涉及内容...

2018-05-23 16:59:28 3022

原创 接口文档自动生成、使用apidoc 生成Restful web Api文档(express)

项目地址为: 项目地址这个是自动生成网页,我们就可以摆脱excel。 一.首先是使用node安装apiDocnpm install apidoc -g二.在需要生成接口的添加注释/** * @api {post} /v1/login 用户登录 * @apiDescription 用户登录 * @apiName login * @apiGroup User * @api...

2018-05-15 17:38:15 6812 1

原创 node.js爬虫之下载前端视频

打开网址 地址是 为了防止作者找上门,所有用了图片然后代码var request = require("request");var cheerio = require("cheerio");var fs = require('fs');var logger = require("./bin/logHelper").helper;var async = require("async");

2018-04-19 00:18:00 3882 2

原创 ElasticSearch-分布式搜索

适用于 网站的站内搜索,检索,聊天记录、日志 优势 开箱即用,独特搜索引擎,性能高。

2018-04-16 16:41:50 258

原创 Docker-自动化部署jenkins的使用

下面是安装 mkdir -p /var/www/jenkins/var docker pull jenkins cd /var/www/jenkins docker run -itd -p 8080:8080 -p 50000:50000 –name jenkins –privileged=true -v /var/www/jenkins:/var/jenkins_home jenki...

2018-03-30 10:48:54 423

原创 Docker-Docker安装mysql、nginx、redis、jenkins,node项目

第一种方法是方法通过 Dockerfile构建,不推荐折磨人。 第二种docker pull mysql第一步 我们新建一个目录,自己随意mkdir -p /var/www/mysql/data /var/www/mysql/logs /var/www/mysql/conf第二步然后新建my.cnf, 这个是mysql的配置文件,在使用docker创建mysql,当容器删除,...

2018-03-29 23:24:41 1638

转载 消息队列应用场景

异步处理 .应用解耦流量削锋日志处理消息通讯1异步处理场景说明:用户注册后,需要发注册邮件和注册短信。传统的做法有两种1.串行的方式;2.并行方式。(1)串行方式:将注册信息写入数据库成功后,发送注册邮件,再发送注册短信。以上三个任务全部完成后,返回给客户端。(2)并行方式:将注册信息写入数据库成功后,发送注册邮件的同时,发送注册短信。以上三个任务完成后,返回给客户...

2018-03-28 14:17:24 153

转载 RESTful API 规范

参考http://www.ruanyifeng.com/blog/2014/05/restful_api.html http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.htmlHTTP 动词对于资源的具体操作类型,由 HTTP 动词表示(括号里是对应的 SQL 命令)。GET(SELECT):从服务器取出资源(一项或多项)。POST(CREATE):

2018-03-28 13:42:31 1198 1

原创 RESTful APi 登陆权限、node.js、用户状态控制之JWT(Json web Token)

http协议是无状态的,所有用户进行多次请求,服务器都不会知道这些请求是谁请求的,以前我可以使用session记录客户端登陆的用户信息,然后让客户端保存用户的cookie,然后客户端每次请求带上cookie,这样服务端就可以识别。JWT其实就是基于token的鉴权机制: 1.首先客户端使用用户名密码来通过api请求服务器 2.服务器进行验证用户的信息,发送给客户端一个token ...

2018-03-05 16:45:05 3098

原创 搭建 vue+express 框架模板

前端模板渲染vue,后端express提供接口服务,合并成一个项目。同样是前后端分离,互不影响。 项目发布只是把vue经过webpack打包当做express的静态文件夹发布首先使用脚手架搭建vue项目详细方法$ npm install -g vue-cli$ vue init webpack my-project$ cd my-project$ cnpm install expres

2018-02-08 15:20:21 8139

原创 C# .net 集合-并发处理http请求之HttpClient

通常我们进行http请求使用WebRequest,这个建立的 http 连接数就只有2个或10个。对于一些诸如浏览器或网络蜘蛛的应用,2个或10个并发数量实在太少,大大影响应用的性能。 在net4.0以后新加了一个HttpClient,在.net 4.5 新加了 async/await 配合httpclient来进行多线程使用。我们看一下原始 WebRequest进行get\post请求的方法

2018-02-06 17:19:19 14197 1

原创 C# .net 集合-并发处理之文件读写处理

//读写锁,当资源处于写入模式时,其他线程写入需要等待本次写入结束之后才能继续写入 static ReaderWriterLockSlim LogWriteLock = new ReaderWriterLockSlim(); //设置读写锁为写入模式独占资源,其他写入请求需要等待本次写入结束之后才能继续写入 //注意:长时间持有读线程锁或写线程锁会使其他线程发生饥

2018-02-03 00:12:32 2383

原创 C# .net 集合-并发处理(List<t>集合换成BlockingCollection )

上一节介绍的是并发集合ConcurrentQueue,遇到的问题是当生产者产生数据向队列集合加数据,消费者去消耗这些数据,当队列中数据为空时候,就需要使用sleep来阻塞这个线程,有什么方法可以让集合直接带有阻塞功能呢?这个时候我们就可以使用BlockingCollection。 static void Main(string[] args) { int co

2018-02-02 17:56:29 5468

原创 C# .net 集合-并发处理(List<t>集合换成ConcurrentQueue、ConcurrentDictionary )

背景 List集合,数组Int[],String[] ……,Dictory字典等等。但是这些列表、集合和数组的线程都不是安全的,不能接受并发请求。例如:namespace Spider{ class Program { private static List _Products { get; set; } static void Ma

2018-02-01 17:28:22 16140

原创 windows下使用nvm-windows做nodejs版本管理、mac使用n管理

1.下载https://github.com/coreybutler/nvm-windows/releases下载 nvm-setup.zip 直接安装2.使用命令行 1.首先安装自己想要的版本 可以到node版本 查看 使用安装nodenvm install 6.9.0 列出所以node版本nvm list切换nodenvm use

2018-01-31 13:48:51 782

转载 MySQL 定时执行脚本类似mmsql作业

MySQL 定时执行脚本类似mmsql作业查看event是否开启show variables like '%sche%'; 将事件计划开启set global event_scheduler =1;创建event e_testcreate event if not exists 交易信息日常更新 on schedule every 3 hour on com

2018-01-04 11:40:22 1005

原创 C# json 序列化 匿名对象序列号 指定对象序列化

一、序列化 通常我们返回json对象给客户端,需要新建一个类,因为有些数据对方是不需要, 就像一个类Person,里面有字段Name、Photo,而对方有要Photo也有不要Photo的,这个时候我们通过序列化 类指定 1.引入System.Web.Extensions 2. var p = new Person { Name = "yc的客户", Photo = "hahaahh

2017-12-05 11:13:11 1520

原创 node.js-ORM数据库框架sequelize使用总结 超时查询、缓存查询、多表关联查询

一、npm安装: install --save sequelize npm install --save pg pg-hstore npm install --save mysql2 npm install --save sqlite3 npm install --save tedious // MSSQL 二、基本配置最好配置文件单独新建一个文件 dbconfig.jsva

2017-11-07 18:03:19 9458

原创 nginx 下载使用

1.下载(推荐使用yum下载安装)yum install nginx -y检查是否已经安装有nginx及对应目录:find /|grep nginx.conf或者cd /usr/local/srcwget https://nginx.org/download/nginx-1.12.1.tar.gz2.解压tar -zxvf nginx-1.12.1.tar.gz查询nginx进程:ps aux|

2017-08-30 11:33:32 341

原创 mongodb linux使用yum安装 远程连接

1安装mongodb数据库: yum -y install mongodb-server mongodb service mongod start #启动mongodb 服务 pstree -p | grep mongod #进程列表 chkconfig mongod on #开机启动mong

2017-07-19 17:53:39 1237

原创 node.js ——centos爬坑node.js安装、全局环境配置、pm2安装

1.用的是阿里云Centos7; 2.使用Xshell远程登陆 FileZille进行文件传输 3.爬坑开始一.安装node.js 1.首先切换到/usr/local/src 使用wget下载node文件cd /usr/local/srcwget https://nodejs.org/dist/v6.11.1/node-v6.11.1-linux-x64.tar.xz2.解压到当前

2017-07-18 15:38:06 4136

原创 R语言node.js通信--实战

项目源代码 https://github.com/harryluo163/rio-node-examples这个一个node.js 通过Rserve 实现node.js与R的互通的例子 包含使用R语法调用和直接调用文件两种 本来是直接在web页面展示数据 现在大家直接切换到Cd C:\项目\R语言\examples 到这个目录中 然后使用命令 node t1 node t2 node t3 调用

2017-07-17 17:33:58 1514 1

原创 R语言node.js通信--R语言环境配置

windows1.官网安装R语言 https://cran.r-project.org/ 2.安装开发工具RStudio 3.安装Rserve 首先配置环境变量 使用命令安装Rserveinstall.packages("Rserve")library(Rserve)4.启动R服务端library(Rserve) Rserve()5.远程链接 首先,再启动Rserve服务端

2017-07-17 17:08:49 1270

转载 Redis window安装

Window 下安装 下载地址:https://github.com/MSOpenTech/redis/releases。 Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘,解压后,将文件夹重新命名为 redis。 打开一个 cmd 窗口 使用cd命令切换目录到 C:\redis 运行 redis

2017-06-22 11:21:21 253

原创 百度echarts常用问题解决代码(js控制图例echarts)

1.使用tab,图表宽度变小 $("#li2" + result.name).css('height', $("#li2n1").height()); $("#li2" + result.name).css('width', window.innerWidth * 0.93);2.tooltip鼠标显示提示加颜色formatter: function(params) { var re

2017-06-19 15:02:28 3177

原创 node.js 支付宝完整支付、网页支付、当面付款、订单查询、签名校验

网页支付,我们知道是直接使用URl进行调整支付https://openapi.alipay.com/gateway.do然后后面带什么参数呢? 这是本地: 然后ajax请求得到参数然后跳转router.get('/pay', function(req, res, next) { var url= ali.webPay({ body: "ttt", s

2017-06-09 14:47:47 17342 17

原创 node.js爬虫之下载图片,批量下载图片,控制下载图片并行上限

首先介绍一下爬虫所需要的的包 require(“request”); –get post请求页面 require(“cheerio”) –解析文本对象为DOM对象 也就是说将string 装换为 js操作的 $() 这种选择器 require(‘fs’); – 保存文件到本地 require(“async”) –流程控制 主要是控制抓取时间间隔 require(‘mkdirp’); –

2017-06-03 16:46:03 11421 1

原创 node爬虫之转码

直接用 iconv-lite 模块进行转码var iconv = require('iconv-lite');var request = require("request");//文档分析var cheerio = require("cheerio");用 http 模块:http.get(url, function(sres) { var chunks = []; sres.on('d

2017-06-03 00:53:46 1111

空空如也

空空如也

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

TA关注的人

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