自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (3)
  • 收藏
  • 关注

原创 数据分析 第六篇:同期群分析

同期群(Cohort)属于用户分群里的一个细分类型,是指在规定时间内对具有共同行为特征的用户进行分群。“共同行为特征”是指在某个时间段内的相似行为,它除了按不同时间的新增用户来分类外,还可以按不同的行为来分类,譬如“在2017年6月第一次购买”,“把5月1日~5月7日的注册用户划分为一个群组”等。 一,同期群分析的概念 同期群分析(Cohort Analysis)是对同期群进行分析的...

2019-12-31 16:28:41 599

原创 关于java继承的哪些事

引言 本文结合一个例子来说明继承实现的基本原理。 基类Base代码如下所示: public class Base { public static int s; private int a; static { System.out.println("基类静态代码块,s:"+s); s=1; } { Syst...

2019-12-29 16:29:54 97

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

目录 前言 Autofac 添加一个Util来随时调用 小结 代码地址 预告 前言 周末加班,下午犯困,整理下之前鼓捣过的东西,看过我之前的webapi系列的读者知道,我之前试过Aspect,但是升级到3.0之后没往下去试了,当时还留了个坑,这不,现在果断移除了换成这个了。 Autofac 这个第三方类库呢,是Ioc的容...

2019-12-28 16:29:43 268

原创 写在2019的尾巴上

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

2019-12-27 16:29:54 104

转载 超长干货丨Kubernetes网络快速入门完全指南

Kubernetes网络一直是一个非常复杂的主题。本文将介绍Kubernetes实际如何创建网络以及如何为Kubernetes集群设置网络。 本文不包括如何设置Kubernetes集群。这篇文章中的所有例子都将使用Rancher 2.0集群(其他平台也同样适用)。即使你打算使用其他的公有云管理Kubernetes服务,也希望你对Kubernetes网络的工作原理有更好的了解。 如何使用Kube...

2019-12-26 16:30:27 164

原创 (Java多线程系列七)Java内存模型和线程的三大特性

Java内存模型和线程的三大特性 多线程有三大特性:原子性、可见性、有序性 1、Java内存模型 Java内存模型(Java Memory Model ,JMM),决定一个线程对共享变量的写入时,能对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local ...

2019-12-25 16:30:56 349 1

原创 oracle存储过程

oracle存储过程 简介 存储过程,它是一个有名字的plsql代码块创建之后会保存到数据库中 当数据库启动时,会自动加载到数据库内存中,执行效率高 存储过程有参数,没有返回值,但是有输出参数 创建 存储过程的创建语法 create [or replace] procedure 存储过程名[(形参 [in|out|in out] 数据类型,...)]is|as 声明部分beg...

2019-12-24 16:31:21 700

原创 CSS实现自适应分隔线的N种方法

分割线是网页中比较常见的一类设计了,比如说知乎的更多回答 这里的自适应是指两边的横线会随着文字的个数和父级的宽度自适应 偷偷的看了一下知乎的实现,很显然是用一块白色背景覆盖的,加一点背景就露馅了 心想:知乎的前端也不怎么样?可能别人的重点不在这些上面吧 下面列举几种更好的实现方式,不会露馅的那种 1.伪元素+transform:translateX(-100%);   ...

2019-12-23 16:31:55 765

原创 JavaSE-知识点总结

Java名词 变量、运算符、类、接口、枚举、参数、注解、异常、包装类、多线程、集合、IO流、网络编程、反射、Lambda、API 源文件:.java文件,存储Java源代码的文件 字节码文件:.class文件,由Java源代码编译后生成的.class文件,可以被JVM读取和执行的文件。 运行Java程序,其实就是执行.class字节码文件,由JVM把字节码数据再转为二进制的机器指令执行。...

2019-12-22 16:31:46 302

原创 一段简单的关于字符串的 Java 代码竟考察了这么多东西

下面的代码运行结果是什么?解释一下为什么会有这些差异。 String s1 = "hello";String s2 = s1 + ",world";String s3 = "hello" + ",world";String s4 = "hello,world";String s5 = new String("hello,world");System.out.println(s2.equal...

2019-12-21 16:32:03 128

原创 Power Platform之Power Automate新增RPA功能

什么是RPA RPA( Robotic Process Automation 机器人流程自动化软件),是一种新型的人工智能的虚拟流程自动化机器人。RPA的核心是通过自动化、智能化技术来“替代人”进行重复性、低价值、无需人工决策等固定性流程化操作,从而有效提升工作效率,减少错误。 RPA能做什么? RPA的优势 RPA与AI 我们可以把RPA跟AI看作是智能化或自动化整...

2019-12-20 16:32:01 1273 1

原创 量化投资学习笔记03——封装回测操作

从前两篇文章中,我们使用pyalgotrade框架进行了量化策略的回测的基本操作。使用框架确实比较方便,但是仍有很多每次都要进行的重复操作,比如建立数据源,建立策略,绑定策略与分析器,运行回测,取得回测结果,绘图等。能不能进行进一步的封装?我想要的是,指定要交易的股票代码,基准股票代码,初始资金,手续费率,回测时间等参数,然后执行回测,就能得到各种回测数据,还可以绘图。 现在就开始干吧。 cla...

2019-12-19 16:30:54 133

原创 CSS选择器

选择器的用处就是告知浏览器,我这一大堆的样式要用在哪些元素 选择器很重要,学好了,可以减少很多CSS代码,不用像以前一样,一大堆类选择器。 以下为了方便查看CSS代码,我采用内联样式的方法,但在实际开发中,建议用外联样式,这有利于页面的性能优化。 id选择器 id选择器,要在标签添加id属性和其值,css根据id来赋予元素样式。 在一个网页文件中,id名不能重复,如下代码有个id="di...

2019-12-18 15:31:53 224 1

原创 动画 | 什么是希尔排序?

希尔排序属性 上篇写的直接插入排序算法时间复杂度是O(n^2),如果要令此排序算法的时间复杂度要低于O(n^2),必须是“远距离的元素交换”使得这组元素能提高有序的程度,然后进行直接插入排序的时候可以减少交换的工作量。 那通过什么减少交换的工作量呢?希尔排序可以解决这个问题。 希尔排序在做直接插入排序之前,希望可以对原整个待排序列进行预处理,目的是为了最后一步直接插入排序的时候可以减少交换...

2019-12-17 15:31:09 96

原创 Django异步任务线程池

当数据库数据量很大时(百万级),许多批量数据修改请求的响应会非常慢,一些不需要即时响应的任务可以放到后台的异步线程中完成,发起异步任务的请求就可以立即响应 选择用线程池的原因是:线程比进程更为可控。不像子进程,子线程会在所属进程结束时立即结束。线程可共享内存。 请求任务异步处理的原理 使用python manage.py runserver模式启动的Django应用只有一个进程,对于每个请求...

2019-12-16 15:29:32 1771

原创 ThreadLocal解决了什么问题

小明所在的项目组(迭代组:一直在迭代的路上),经常会在已有接口的基础上开发一些小功能,并且前提是在保证现有用户的不受影响基础上迭代。功能迭代,在代码层面小明有1w种实现方法(吹牛的),一起来看看这次小明如何使用ThreadLocal优雅地完成本次迭代吧! 由于 ThreadLocal 支持范型,如 ThreadLocal< StringBuilder >,为表述方便,后文用...

2019-12-15 15:28:43 212

原创 Java的值类型和引用类型

一、问题描述   前几天因为一个需求出现了Bug。说高级点也挺高级,说白点也很简单。其实也就是一个很简单的Java基础入门时候的值类型和引用类型的区别。只是开发的时候由于自己的问题,导致小问题的出现。还好突然想起来以前看过一篇对于该问题讲解的博客,才能快速定位问题的位置。防止下次再犯,顺便也就把这个当做笔记记录下来,放入自己的Bug集中。 二、值类型和引用类型的比较   这个大家应该都是没问...

2019-12-14 15:28:43 94

原创 【集合系列】- 深入浅出的分析 Set集合

一、摘要 关于 Set 接口,在实际开发中,其实很少用到,但是如果你出去面试,它可能依然是一个绕不开的话题。 言归正传,废话咱们也不多说了,相信使用过 Set 集合类的朋友都知道,Set集合的特点主要有:元素不重复、存储无序的特点。 啥意思呢?你可以理解为,向一个瓶子里面扔东西,这些东西没有记号是第几个放进去的,但是有一点就是这个瓶子里面不会有重样的东西。 细细思考,你会发现, ...

2019-12-13 15:28:16 113

原创 《手把手教你》系列进阶篇之2-python+ selenium自动化测试 - python基础扫盲(详细教程)

1. 简介   这篇文章主要是分享讲解一下,如何封装自己用到的方法和类。以便方便自己和别人的调用,这样就可以避免重复地再造轮子。   封装(Encapsulation)是面向对象的三大特征之一(另外两个是继承和多态),它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问。 就好比使用计算机,我们只需要使用计算机提供的...

2019-12-12 15:28:38 230

原创 深入理解类、对象、引用三者之间的关系

本文旨在扫盲,深入理解类、对象、引用三者之间的关系,在处理 a = b = c 这类问题上可以有清晰无误的思考。 一、什么是类 类是一个模板,它描述一类对象的行为和状态。 拿一条狗来举例,它的状态有:名字、品种、颜色,行为有:叫、摇尾巴和跑。 说白了,类就是我们自然界的一些统称,比如人、狗、车等。我们已经在实际生活中,将一些事物主动划分为某一类,将这个概念延伸至软件开发中,就是我们自己所写...

2019-12-11 15:29:12 2203

原创 Frida用法之函数操作

Frida接口功能介绍 Frida是个so级别的hook框架,它可以帮助开发、安全人员对指定的进程的so模块进行分析。它主要提供了功能简单的Python接口和功能丰富的JS接口,使得hook函数和修改so可以编程化,接口中包含了主控端与目标进程的交互接口。 目标进程的交互接口分为: JS接口 功能包括但不限于进程操作、模块操作、内存操作、函数操作、线程操作、网络通信、数据流操作、文件操作、数...

2019-12-10 15:29:35 1821 1

原创 SpringBoot日志处理之Logback

日志处理是一个正式项目必备的功能,日志要能够根据时间、类型等要素,根据指定格式来保存指定的日志,方便我们观察程序运行情况、定位程序bug。 SpringBoot中推荐使用Logback日志框架。 本节示例项目在https://github.com/laolunsi/spring-boot-examples slf4j:一个针对各类Java日志框架的统一facade抽象。 java常见日志框...

2019-12-09 15:29:23 139

原创 svn+apache搭建版本控制服务器

Centos7(linux)搭建版本控制服务器(svn+apache) 1.简介: 版本控制服务器: 版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。 SVN: SVN(subversion)是版本管理工具,是CVS的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。 作为运维人员来说,安装和配置SVN服务...

2019-12-08 15:29:31 160

原创 WebGL简易教程(十四):阴影

目录 1. 概述 2. 示例 2.1. 着色器部分 2.1.1. 帧缓存着色器 2.1.2. 颜色缓存着色器 2.2. 绘制部分 2.2.1. 整体结构 2.2.2. 具体改动 3. 结果 4. 参考 1. 概述 所谓阴影...

2019-12-07 15:28:15 758

原创 关于python语言优化的一些思考

最近一直在做python工程化相关的工作,颇有心得,遂总结一下。一是为了整理思绪,二是为了解放自己健忘的大脑。 python是一个C的语法糖盒子 原生的python通常都是由cpython实现,而cpython的运行效率,确实让人不敢恭维,比较好的解决方案有cython、numba、pypy等等 cython 是目前我认为发展最好,最靠谱的一项Python加速解决方案。 使用cython...

2019-12-06 15:28:21 81

原创 Rust中的RefCell和内部可变性

RefCell Rust在编译阶段会进行严格的借用规则检查,规则如下: 在任意给定时间,要么只能有一个可变引用,要么只能有多个不可变引用。 引用必须总是有效。 即在编译阶段,当有一个不可变值时,不能可变的借用它。如下代码所示: fn main() { let x = 5; let y = &mut x;} 会产生编译错误: error[E05...

2019-12-04 15:35:52 430

原创 [从今天开始修炼数据结构]串、KMP模式匹配算法

[从今天开始修炼数据结构]基本概念 [从今天开始修炼数据结构]线性表及其实现以及实现有Itertor的ArrayList和LinkedList [从今天开始修炼数据结构]栈、斐波那契数列、逆波兰四则运算的实现 [从今天开始修炼数据结构]队列、循环队列、PriorityQueue的原理及实现 一、什么是串?   串是羊肉牛肉等用铁签穿过的食物,常碳烤、油炸。不对,错了…… 串String是...

2019-12-04 15:27:24 218

原创 《浅入浅出》-RocketMQ

你知道的越多,你不知道的越多 点赞再看,养成习惯 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了无数竞争对手,每次都只能看到无数落寞的身影失望的离开,略感愧疚(请允许我使用一下夸张的修辞手法)。 于是在一个寂寞难耐...

2019-12-02 15:35:08 250

原创 从Netty EventLoop实现上可以学到什么

本文主要讨论Netty NioEventLoop原理及实践,关于Netty NioEventLoop,首先要知道NioEventLoop是什么,为什么它会是Netty核心Reactor处理器,实现原理是什么,进而再讨论Netty对其的实现及使用上我们可以学到哪些。 EventLoop是一个Reactor模型的事件处理器,一个EventLoop对应一个线程,其内部会维护一个selecto...

2019-12-01 15:34:39 200

仿站小工具

这款工具可以轻松的扒掉任意网站的源码! 且自动生成文件夹 将其统一的html css 以及js文件分别保存下来! 其内存小,相比于其他类似仿站工具。犹有过之而无不及!

2017-04-12

几款h5游戏附带源码

html5小游戏

2017-04-10

空空如也

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

TA关注的人

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