自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 从数据架构看生鲜电商的数据价值

目前数据的价值已经从单纯的啤酒尿不湿数据挖掘、决策分析与决策支持、商业分析,往数据资产、生产力资料方向发展。作为电商垂直领域的生鲜电商则更是数据战场,凭借推荐算法和大数据杀熟等策略,收集完整的定价轨迹和用户偏好,构建全面的用户画像,开展精准的用户运营活动。对于一个企业而言,从企业架构视角,一个是数据集成的价值,基于数据集成的企业内部IT系统的集成;另一个数据分析的价值,以商业分析、大数据分析、数据建模等为代表的数据运营,且数据运营的方式已经逐步从对内的管理运营,向外扩展形成了对客户对用户对供应商的体

2020-08-22 14:42:13 426

原创 线程池之ThreadPoolExecutor

线程池的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后启动这些任务,如果线程数量超过了最大数量,那么超出数量的线程排队等候,等其他线程执行完毕再从队列中取出任务来执行。在开发过程中,合理地使用线程池能够带来3个好处: 降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗; 提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行; 提高线程的可管理性。线程是稀缺资源,如果无限制地创建,不仅会消耗系统资源,还会降低系统的稳定性,

2020-08-22 14:41:31 278

原创 代码扫描Sonar使用教程

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从多个维度检测代码质量:可靠性安全性可维护性覆盖率重复率通过插件形式,可以支持包括Java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测效果图下载https://www.sonarqube.org/downloads/wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.5.

2020-08-02 11:30:21 772

原创 如何选择数据分析平台

本文是一份对数据分析的生命周期、不断扩展的工具和技术组合,以及如何根据你的需要选择一个正确的数据平台的简要指南。无论你是在软件开发、devops、系统、云计算、测试自动化、站点可靠性、领导scrum团队、信息安全或是其他的信息技术领域负有责任,你都会有越来越多的机会和需求来与数据、分析和机器学习打交道。你对数据分析的接触可能来自于IT数据,例如从敏捷、devops或网站指标中所开发的度量和见解。要学习有关数据、分析和机器学习的基本技能和工具,最好的方法就是将它们应用到你所知道的数据中,并从中挖掘出见解来推

2020-07-21 14:21:25 230

原创 微服务架构中的BFF到底是啥?

一、从一个MyShop开始说起为了讲清BFF是个啥,这里引用我在波波老师的课程《Spring Boot与K8s云原生应用开发》中学到的一个案例,来跟大家分享一下,并尽力说清楚BFF是啥,又是如何演化出来的。假设我们在一个开发团队中,开发了一个叫做MyShop的电商项目,它采用的是微服务的架构风格。它经历过几次架构调整,我们就跟着它的调整来看看BFF是怎么演化出来的。假设v1版本在七八年之前,MyShop已经采用了服务化的架构,它的客户端也主要还是以传统的Web应用为主。在当时,它的SOA架构

2020-07-12 10:21:42 14751

原创 vue项目发布时去除console语句

在vue.config.js中添加下面的代码即可// vue-cli version > 3modeule.exports = { configureWebpack: config => { if (process.env.NODE_ENV === "production") { config.optimization.minimizer[0].options.terserOptions.compress.drop_console = ...

2020-07-11 17:17:29 350

原创 四叉树是干什么的?

四元树又称四叉树是一种树状数据结构,在每一个节点上会有四个子区块。四元树常应用于二维空间数据的分析与分类。 它将数据区分成为四个象限。数据范围可以是方形或矩形或其他任意形状。从定义我们可以看出重点信息:树状结构四个区块分类矩形图示讲解讲解之前需要先说明一下四叉树是用来做什么的,明白了原理才好理解它的行为。使用四叉树就是使用分类的方法,减少碰撞节点的个数,只取出与给定碰撞体相同区域或者压在碰撞体所在区域边上的对象。将游戏屏幕分为四个区域。插入对象插入的对象超过了我们设置的阈值时,划分插

2020-06-19 14:34:56 1670

原创 .Net微服务实战之DevOps篇

什么才是优秀的架构设计?  曾经有好几个同行问过我同一个问题:什么才是优秀的架构设计?我一直信奉着两句话和一个定律:架构服务于业务,技术服务于架构康威定律(简单理解成组织架构的设计等同于系统架构的设计)  架构设计其实就是一种方案的取舍,在有限的资源里(包括但不限人力、时间)能让团队顺利的实施技术,同时满足业务规模的需要,我认为可以称之为优秀的架构设计,简单来说两个字合适架构核心要素  核心的主要5大:性能、可用性、伸缩性、扩展性、安全性。而我们所讨论的微服务,选择了扩展性,牺牲了可用性、性能

2020-06-19 14:30:31 241

原创 从linux源码看epoll

在linux的高性能网络编程中,绕不开的就是epoll。和select、poll等系统调用相比,epoll在需要监视大量文件描述符并且其中只有少数活跃的时候,表现出无可比拟的优势。epoll能让内核记住所关注的描述符,并在对应的描述符事件就绪的时候,在epoll的就绪链表中添加这些就绪元素,并唤醒对应的epoll等待进程。本文就是笔者在探究epoll源码过程中,对kernel将就绪描述符添加到epoll并唤醒对应进程的一次源码分析(基于linux-2.6.32内核版本)。由于篇幅所限,笔者聚焦于tcp协议

2020-06-19 14:19:51 131

空空如也

空空如也

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

TA关注的人

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