自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python从入门到转行

题记:大二的时候发现人生苦短,所以信了拍神,开始学Python。学了大半年之后成功转行做前端了。来写个教程帮助大家入门Python。Python零基础入门零基础入门就得从最基本的变量,语法格式,数据类型,函数,作用域,模块等基本知识入手(有编程基础基础也得这么来)和篮球一样,先来三步上篮:Python基础知识入门,从程序基础开始学,能看懂代码就可以了。三种选择: 第一种:找一本P...

2019-12-30 13:23:52 603

原创 事件驱动框架EventNext之线程容器

EventNext是.net core下的一个事件驱动的应用框架,通过它代理创建的接口行为都是通过事件驱动的模式进行调用.由于EventNext的所有调用都是基于事件队列来进行,所以在资源控制上非常方便;它可以进行多样性的线程分配,其中Actor应用就是它的一种基础实现;在新的版中EventNext增加了一个新的特性就是线程容器,通过线程容器可以让N个类的行为在指定线程资源下运行。接来详细分析这个...

2019-12-30 12:13:48 209

原创 springboot-集成WebSockets广播消息

一 WebScoketS 简介RFC 6455即 webSockets 协议提供了一种标准化的方式去建立全双工,双方面交流的通道在客户端和服务端甚至单一的TCP连接中进行通信; webSockets 协议其跟HTTP的tcp协议不同,但是其设计目的是通过HTTP协议进行工作,可以使用40或者443端口和重新使用现有的防火墙规则;GET /spring-websocket-portfol...

2019-12-30 12:12:27 168

原创 什么?我往Redis写的数据怎么没了?

首先看俩问题,然后针对这俩问题,整理一下Redis过期策略。如果你对Redis的过期策略还不了解,那么请继续。1、我往Redis里写的数据怎么没了?使用Redis的同学你要明白一点,你为什么用Redis?用redis的作用是什么?用redis的好处是什么?凡事多思考一下为什么,多想想背后的原因。就在不久前有朋友跟我说过,说他们生产环境的Redis怎么经常会丢掉一些数据?写进去了,过一会...

2019-12-30 12:11:54 892

原创 写一个6位随机验证码程序,要求验证码中至少包含一个数字,一个小写字母,一个大写字母

import random,stringsrc_list = []src_list.append(str(random.randint(1,9))) #生成一个数字src_list.append(random.sample(string.ascii_lowercase,1)[0]) #生成一个小写字母src_list.append(random.sample(string.ascii_...

2019-12-29 17:56:19 1751

原创 django 模版标签笔记

一、模板变量笔记:1、在模版中使用变量,需要将变量放到‘{{}}’中。'{{ 变量 }}'2、如果想访问对象的属性,可以通过'对象.属性名'的方式访问3、如果想要访问一个字典的key对应的value,那么只能通过'字典.key'4、因为在访问字典的'key'时候也用‘.’来访问,因此不能在字典中定义本身就有的属性名当做‘key’,否则字典的那个属性将为编程字典中的key了5、如果想要访问...

2019-12-29 17:55:46 171

原创 django-实现登录短信验证

功能演示核心任务前端功能:点击按钮Ajax调用发送验证码功能 输完验证码后Ajax调用验证功能后端功能:功能1:发送验证码功能 功能2:验证码检查后台核心逻辑(不需要手写)功能3:发短信 功能4:生成短信验证码(随机生成6位数字)集成Redis使用Redis代替session缓存, 存储数据! Redis集成到Django中!扩展功能:统一接...

2019-12-29 17:55:00 933

原创 多Python版本共存

Python 3.4 和 3.7 共存我的电脑上同时安装了 Python 3.4 和 Python 3.7 两个 Python 版本。现在打开终端窗口进入指定的版本。py -3.4py -3.7py -2.7在终端窗口输入 py -3.4 回车进入 Python 3.4 版本。Python 3.7 和 Python 2.7 同理。同理,Python 3.7.5 和 Pytho...

2019-12-29 15:15:51 604

原创 Python经典排序算法

冒泡排序、选择排序、插入排序这三个是最慢也是最经典的三个排序算法快速排序对于大的乱数串列一般相信是最快的已知排序冒泡排序 bubble sort最简单的排序算法,也是效率最差的,因为它必须在最终位置知道前交换,浪费许多“交换操作”如果列表已经排序,则是最好情况,遍历期间无需交换,如果发现已经排序,可以提前终止,这种修改下的冒泡通常称为短冒泡排序时间复杂度: 平均O(n^2...

2019-12-29 15:15:21 215

原创 Pycharm版本控制之本地Git用法

1、主题  介绍如果通过Pycharm使用本地Git集。  2、准备工作    (1)PyCharm版本为2.7或更高  (2)已经创建一个工程  (3)Git插件可用,对应可执行文件在Git page页面正确配置  3、创建一个Git集  按下Alt+`显示常用的VCS命令(也可以通过主菜单VCS→VCS Operations Popup),选择Create Git...

2019-12-29 13:48:08 264

原创 Python开发个人专属表情包网站

“表情包”是一种利用图片来表示感情的一种方式。表情包是在社交软件活跃之后,形成的一种流行文化,表情包流行于互联网上面,基本人人都会发表情。曾经你是否也有过找不到表情包去应对别人的时候。今天分享如何用Python开发个人专属的表情包网站,想用什么表情包搜一下就有了!本篇分为两部分1、爬取表情包存入数据库2、搭建个人个人专属表情网站爬取包情包存入数据库环境:Wi...

2019-12-29 13:47:28 632

原创 使用 HttpClient 进行表单提交时,遇到的问题

问题在开发微信支付的小微商户进件接口时,需要通过表单来上传身份证图片等数据。在微信支付接口文档也说明了,需要使用 multipart/form-data 的方式发送请求。.NET 提供了MultipartFormDataContent类型,帮助我们构建表单请求,故有以下代码:var form = new MultipartFormDataContent(){ {new St...

2019-12-29 13:03:45 519

原创 ThreadLocal详解

为什么要学习ThreadLocal呢?因为面试官经常问,而且在线程中使用它可以给我们提供一个线程内的本地局部变量,这样就可以减少在一个线程中因为多函数之间的操作导致共享变量传值的复杂性,说白了,我们使用ThreadLocal可以做到在一个线程内随时随地的取用,而且与其他的线程互不干扰。在一些特殊的情景中,应用ThreadLocal会带来极大的便利,不过很多人却搞不懂Threadlocal到底是...

2019-12-29 13:01:58 136

原创 git之分支

分支相互之间互不干扰1.小乌龟创建分支,切换/检出 创建后直接切换到该分支,另一个需要再切换一下。  2.点击这个可以看到所有的分支,进行删除操作。    3.在fen1,fen2分别进行操作更新,互不影响,但是可以后期合并   4.合并,比如我想在master合并fen1  先切换到master分支上,然后...

2019-12-29 13:01:00 132

原创 JDBC Connection Configuration参数化

jar包下载在Jmeter 中想用到连接数据库的功能,必须下载jar包,下载地址。下载好了jar包,如何使用呢?使用方式有二。其一:下载的jar包保存在非Jmeter的lib下的ext目录下,则需要在Jmeter工程中测试计划元件下指定jar包路径,如下图所示;其二:下载的jar包保存在Jmeter的lib下的ext目录下,则不需要做其他的配置了,也不用担心以后给其他电脑cop...

2019-12-28 20:40:49 599 1

原创 谈谈模型融合之二 —— 随机森林

上篇文章介绍了集成学习的相关概念以及基于 Boosting的 AdaBoost,这篇文章将介绍基于模型融合的另一种方式 Bagging 的算法,随机森林(Random Forest)。(上篇公式敲的太累了这篇就来个简单的缓解缓解)2|0随机森林2|1算法思想我们先来看看这个算法的名字,可以拆分开为两部分,随机和森林。森林我们很容易可以想到,就是有很多棵树,即由多颗决策树组成...

2019-12-28 20:40:11 971

原创 Java 类加载机制详解

引子Java 虚拟机的启动是通过引导类加载器 ( Bootstrap Class Loader ) 创建一个初始类 (Initial Class ) 来完成,这个类是由虚拟机的具体实现指定。紧接着,Java虚拟机链接这个初始类,初始化并调用它的 public void main(String[])方法。之后的整个执行过程都是由对此方法的调用开始。执行 main 方法中的 Java 虚拟机指令...

2019-12-28 16:21:36 129

原创 net core WebApi——依赖注入Autofac

前言周末加班,下午犯困,整理下之前鼓捣过的东西,看过我之前的webapi系列的读者知道,我之前试过Aspect,但是升级到3.0之后没往下去试了,当时还留了个坑,这不,现在果断移除了换成这个了。Autofac这个第三方类库呢,是Ioc的容器,可以简化我们很大的工作量,比如说在之前我们需要写个类去声明接口与实现,而用了这个容器呢,就不需要了,当然还是需要些配置的。首先,引入第三方类库...

2019-12-28 16:05:04 331

原创 异步加载css 和 谷歌浏览器各实用小工具介绍

异步加载css资源加开页面首屏显示速度使我们前端一直在追求的目标,而css资源在这些优化中同样也是不可或缺的。一个网站可能有一部分css资源是必须的,他需要在页面渲染完之前就被加载完,并和html一起解析,这个暂时无法做手脚,但是我们可以把一些非关键的css进行异步化,也就是异步加载。市面上有很多工具可以达到这个效果,比如loadCSS这次要说的这个异步加载方式,其实也是loadCSS...

2019-12-28 16:03:40 628

原创 微服务和分布式交易

这篇文章解释了LIXA和XTA如何实现多语言分布式事务系统的开发,希望对正在学习中的你有用!两阶段提交协议是在大型机(如大型机和UNIX服务器)时代设计的。 XA规范是在1991年定义的,当时典型的部署模型是将所有软件安装在单个服务器中。 令人惊讶的是,可以重复使用规范的一致部分以支持基于微服务的体系结构内的分布式事务。 这篇文章解释了LIXA和XTA如何实现多语言分布式事务系统的开发。...

2019-12-28 14:55:41 232

原创 Mysql Explain详解

一、背景在日常工作中,可能会收到一些超时或慢响应的告警,最根到底可能是因为一些执行时间比较的SQL语句,这就跟我们平时开发需要注意细节相关了。那么找到这些SQL语句怎么优化呢?到底是哪里的问题导致SQL执行时间长呢? 这个时候Explain命令尤其重要,它可以查看该SQL语句有没有使用上索引、使用了哪个索引、有没有做全表扫描、有没有使用临时表等等。下面都是基于mysql 8进行案例说明的。...

2019-12-28 14:54:31 258 1

原创 Docker应用容器引擎

1.Docker概述1.1.Docker简介Docker 是一个开源的应用容器引擎,基于 Go 语言开发。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 · Docker应用场...

2019-12-28 13:42:57 183

原创 研发环境容器化实施过程(docker + docker-compose + jenkins)

背景介绍目前公司内部系统(代号GMS)研发团队,项目整体微服务规模大概是4+9+3的规模,4个内部业务微服务,9个是外部平台或者基础服务(文件资源/用户中心/网关/加密等),3个中间件服务(数据库/Redis/Nacos)。分为2个组,迭代周期为2周。需求和排期都是会有交叉,会保证每周都有迭代内容交付,另外技术部门也在进行性能优化以及代码规约的重构。我们的Git管理模型使用的是AoneFlo...

2019-12-28 13:42:13 158

原创 KETTLE4个工作中有用的复杂实例--1、数据定时自动(自动抽取)同步作业

天呕心沥血花了8个小时给大家带来kettle工作中最常见的四种复杂实例,90%的项目用到这4种实例都可以解决。4种实例种还有2种通用kettle工具,使用这两种通用工具实例,可以直接修改相应的配置文件,完成数据的同步。下面就一一给大家带来这4种实例,完全原创且可以拿来直接使用,废话不说,下面直接给大家带来具体实例:KETTLE4个工作中有用的复杂实例--1、数据定时自动(自动抽取)同步...

2019-12-28 13:41:26 1550 1

原创 CAS 和 ABA 问题

CAS简介CAS 全称是 compare and swap,是一种用于在多线程环境下实现同步功能的机制。CAS 它是一条CPU并发原语。操作包含三个操作数 -- 内存位置、预期数值和新值。CAS 的实现逻辑是将内存位置处的数值与预期数值想比较,若相等,则将内存位置处的值替换为新值。若不相等,则不做任何操作。这个过程是原子的。CAS并发原语体现在java语言中的sun.misc.Unsa...

2019-12-27 18:51:32 153 1

原创 Cesium案例解析——Camera相机

1. 概述Cesium的Camera案例,展示了其关于漫游器镜头的控制,能够调整视图的位置。这里改进了一下这个实例,使之能够展示一些自己关注的兴趣点的情况,并总结遇到的问题。2. 实例2.1. Camera.html<!DOCTYPE html><html lang="en"><head> <meta charset="ut...

2019-12-27 18:48:29 1800

原创 写在2019的尾巴上

正文2019年已经接近尾声,回首这一年,有收获,更多是惶恐 -- 知道自己还有太多不知道。该怎么总结这一年呢,用成就吗?已经是过去式了,况且本来也没有什么成就;用想做而没做到的事情,或者没有完成的计划?难免让人有些沮丧。那么就记录这一年的点滴思考吧,毕竟,意识到了只是第一步,要坚持做到尚需更多的努力,2020年值得去践行。这些思考并不是打算写这篇文章的时候临时总结的,而是翻看这一年的笔...

2019-12-27 16:08:39 108

原创 rabbitmq template发送的消息中,Date类型字段比当前时间晚了8小时

前言前一阵开发过程遇到的问题,用的rabbitmq template发送消息,消息body里的时间是比当前时间少了8小时的,这种一看就是时区问题了。就说说为什么出现吧。之前的配置是这样的:@Bean public RabbitTemplate rabbitTemplate(ConnectionFactory connectionFactory) { Rab...

2019-12-27 15:11:58 1018

原创 两种方法,轻松上手ConfigMap!

属性配置文件在任何应用程序中都非常重要。它们不仅可以让应用程序具备灵活性,还能够根据文件中配置的值产生不同的功能。实际上,在staging、开发、测试、UAT或生产环境中,我们都使用属性配置文件来驱动不同的行为。通常情况下,属性配置文件会与代码一起打包,并且整个程序包都部署在执行环境中。这一方法中,如果你想更改任何配置(即便配置文件中也发生了更改),你需要重新发布代码。尽管这种方法行之有效...

2019-12-27 15:11:19 212

原创 golang内存分配与管理

Go语言内置运行时(就是runtime),不同于传统的内存分配方式,go为自主管理,最开始是基于tcmalloc架构,后面逐步迭新。自主管理可实现更好的内存使用模式,如内存池、预分配等,从而避免了系统调用所带来的性能问题。1. 基本策略每次从操作系统申请一大块内存,然后将其按特定大小分成小块,构成链表(组织方式是一个单链表数组,数组的每个元素是一个单链表,链表中的每个元素具有相同的大小。)...

2019-12-27 13:33:43 216

原创 没提供编码格式,读文件时要怎么推测文件具体的编码

引子我们知道从一个文件流中读取内容时是要指定具体的编码格式的,否则读出来的内容会是乱码。比如我们的代码写成下面这个样子:private static void m1(){ try(FileInputStream fileInputStream = new FileInputStream("D:\\每日摘录.txt")) { byte[] bytes = FileC...

2019-12-27 13:23:49 326

原创 基于哈希表实现页面置换算法

首先,在看这篇文章前,你需要了解缓存是干嘛的?缓存 众所周知,程序运行时,数据一般存在内存或磁盘里,而内存中的数据总是可以被更快速的获取。但是内存空间是有限的,大多数人PC的内存可能在4G~16G之间,这意味着你必须要舍弃一部分不频繁被访问的数据,把它们存在磁盘里;而把经常需要被访问的数据存在内存里,这就是缓存的基本思路。 但对于程序(和你)而言,无法预测哪些数据是被经常访...

2019-12-27 13:22:18 170

原创 Dapr Pub/Sub 集成 RabbitMQ 、Golang、Java、DotNet Core

搭建 RabbitMQ Docker 搭建 RabbitMQ 服务 docker run -d --hostname my-rabbit --name some-rabbit -p 5672:5672 -p 15672:15672 rabbitmq:3-management 创建 rabbiqmq.yaml apiVersion: dapr.io/v1...

2019-12-27 12:22:01 703

原创 线程安全问题

本篇主要讲解 线程安全问题,演示什么情况下会出现线程安全问题,以及介绍了 Java内存模型 、volatile关键字 、CAS 等 ,最后感谢吴恒同学的投稿! 一起来了解吧!! 1. 如何会发生线程安全 运行如下程序:/*** @program: * @description: 多线程操作的对象* @author: * @create: **/public class M...

2019-12-27 12:21:36 139

原创 简单工厂、工厂方法和抽象工厂的区别

工厂模式一般分为简单工厂、工厂方法和抽象工厂三种,看了很多资料,好多讲的都是云里雾里的。要么是概念太多,让人看得一脸懵逼,要么是举得例子不太恰当,看了更让人迷惑了。经过自己一番研究,通过一个简单的例子,终于搞明白了它们之间的区别。下面以生产宝马、奔驰汽车的工厂为例,讲解它们之间的区别。一、简单工厂模式创建一个工厂类,根据传入的参数来决定创建哪个汽车类//汽车接口public i...

2019-12-26 22:12:48 156

原创 JavaScript的变量提升机制

变量提升JavaScript的变量提升有两种,用var声明的变量以及用function声明的变量。用var声明的变量我们先来看下面这段代码,a的值是多少代码1console.log(a);var a;按照以往编程语言的思路来看,代码自上而下运行,按这种思路,会报错,因为执行到第2行时,变量a还没有定义,所以会报错a is not defined然而事实上答案是u...

2019-12-26 22:12:20 93

原创 大数据计算引擎之Flink Flink CEP复杂事件编程

基础概念FlinkCEP 说明一个或多个由简单事件构成的事件流通过一定的规则匹配,然后输出用户想得到的数据,满足规则的复杂事件。具备如下的特征:目标:从有序的简单事件流中发现一些高阶特征 输入:一个或多个由简单事件构成的事件流 处理:识别简单事件之间的内在联系,多个符合一定规则的简单事件构成复杂事件 输出:满足规则的复杂事件CEP用于分析低延迟、频繁产生的不同来源的事件流。...

2019-12-26 18:36:06 392

原创 Android中实现自更新

前言现在android一体机已经是越来越多了,广告机、查询一体机、会议以及教学上的应用,而这些一体机的版本迭代是一个麻烦的事情,因为不能让人一台一台去更新,人力成本较大。因此,前段时间经过我反复的调试,完成了一个自更新功能的demo,来分享一下。效果图我这里做个演示,是点击检查更新,实际使用中可以通过推送、长连接等方式来接收更新的通知这里使用到的是轮询下载安装应用的组件,具体的...

2019-12-26 18:35:25 86

原创 vtk工程配置与生成

前言图形图像这块儿,最近因为工作需要接触的相对多了点儿,精力基本上也都投入了这块儿,搞的天天要死要活,毕竟我一个.net的突然来到cxx的世界,也是很苦恼的,也是头一次见到新建工程就需要配置并且解决各种报错,就连vtk的代码搞下来都还要调整,唉,不多说了。vtk的生成为啥不做vtk的介绍呢,因为我也不太清楚,还是不多介绍了,总的来说是在opengl的基础上封装的第三方类库吧(可以这样理...

2019-12-26 16:30:11 304

原创 Spark原理概述

一. Spark出现的背景在Spark出现之前,大数据计算引擎主要是MapReduce。HDFS + MapReduce的组合几乎可以实现所有的大数据应用场景。MR框架抽象程度比较高,需要我们编写Map和Reduce两个步骤(MapReduce 框架其实包含5 个步骤:Map、Sort、Combine、Shuffle以及Reduce)每个Map和Reduce之间需要进行Shuffle(...

2019-12-26 16:29:26 225

空空如也

空空如也

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

TA关注的人

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