• avatar 服务端研究员 2019-06-29 08:27:23

    RabbitMQ实战(二)-基础概念

    1 为什么是你? RabbitMQ RabbitMQ是一个开源的消息代理和队列服务器,通过普通协议在完全不同的应用之间共享数据,使用Erlang语言编写,并且基于AMQP协议. 1.1 大厂们共同的抉择 滴滴、美团、头条、去哪儿、艺龙… 1.2 得天独厚的强势 开源,性能优

  • avatar 服务端研究员 2019-06-28 17:04:45

    RabbitMQ实战指南之Time-To-Live and Expiration

    1 概述 RabbitMQ允许你为messages和queues设置TTL(存活时间)。这可以使用可选的queue 参数或策略来完成(建议使用后一个选项)。 Message TTL可以应用于单个队列,一组队列或逐个消息地应用。 TTL设置也可以由操作策略强制执行。 队列中的 Per-Queu

  • avatar 服务端研究员 2019-07-08 21:51:35

    突破Java面试(35) - Dubbo的负载均衡、高可用及动态代理的策略

    1 面试题 Dubbo负载均衡策略和集群容错策略都有哪些?动态代理策略呢? 2 考点分析 这些都是关于Dubbo必须知道,基本原理,序列化是什么协议,具体用dubbo的时候,如何负载均衡,如何高可用,如何动态代理等. 就是看你对Dubbo掌握程度 工作原理:服务注册,注册中心,消费者

  • avatar 服务端研究员 2019-07-06 18:09:25

    突破Java面试(23-9) - 深入解析Redis哨兵底层原理

    1 sdown和odown转换机制 两种失败状态 1.1 概念 sdown主观宕机 一个哨兵自己觉得一个master宕机 odown客观宕机 quorum数量的哨兵都觉得一个master宕机 1.2 达成条件 sdown 一个哨兵ping一个master,超过

  • avatar 服务端研究员 2019-07-04 12:18:31

    RabbitMQ实战(四) - RabbitMQ & Spring整合开发

    0 相关源码 1 你将学到 RabbitMQ 整合 Spring AMQP实战 RabbitMQ 整合 Spring Boot实战 RabbitMQ 整合 Spring Cloud实战 2 SpringAMQP用户管理组件 - RabbitAdmin RabbitAdmin

  • avatar yfeeling 2019-07-23 12:08:25

    【牛客】第一题

      在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 ##举例: 1 2 3 4 5 6 7 8 9 ##思路:因为数组的规律是二维数组由上到

    来自 yfeeling
    00
  • avatar yfeeling 2019-07-23 12:09:02

    【牛客】第二题

      请实现一个函数,将一个字符串中的每个空格替换成“%20”。 ##举例:字符串为:We Are Happy.则经过替换之后的字符串为:We%20Are%20Happy。 ###Tips:StringBuff用法:####1.StringBuff的初始化: StringBuffer s =

    来自 yfeeling
    00
  • avatar 服务端研究员 2019-06-30 08:26:23

    突破Java面试(17)-ElasticSearch的部署架构

    1 面试题 ES集群部署架构如何 每个索引的数据量大概多少 每个索引大概有多少分片 2 考点分析 问你生产环境咋部署的,说白了,没啥技术含量,就是看你有没有在真正的生产环境里做过ES! 有些同学可能没在生产环境做过,没在线上部署过ES集群,也没实际玩过,也没往ES集群里面导

  • avatar 服务端研究员 2019-06-27 10:33:14

    1sdfsaf

    1 现在常见的Java工程师/架构师对缓存技术的了解和掌握程度 工作中都会用到一些缓存技术,redis/memcached基础使用,初步的集群知识 我面试过的人里,能掌握到很少的缓存架构的人,屈指可数,个位数,而且都是在大公司有过类似的大型复杂系统架构经验的人 2 缓存架构/技术掌握的不够,对

  • avatar 服务端研究员 2019-06-27 04:06:54

    突破Java面试(15)-分布式搜索引擎Elastic Search的工作流程

    以下用ES表Elastic Search 1 面试题 ES写入/查询数据的工作原理是什么呀? 2 考点分析 面试官就是想看看你是否了解ES的一些基本原理. ES无非就是写/查数据,你如果不明白你发起写入/搜索请求后,ES做了什么,那你该劝退了. 3 详解 3.1 ES写数据的执行流程

  • avatar 服务端研究员 2019-06-26 01:30:31

    突破Java面试(14)-分布式搜索引擎的架构

    以下用ES表Elastic Search 1 面试题 说说ES的分布式架构原理 2 考点分析 在搜索这块,曾经lucene 是最流行的搜索库. 几年前业内一般都问,你了解 lucene 吗?你知道倒排索引的原理吗? 但现在不问了,因为现在项目基本都是采用基于 lucene 的分布式搜索引

  • avatar 服务端研究员 2019-06-26 00:05:41

    突破Java面试(9)-如何保证消息队列的顺序性

    1 面试题 如何保证消息的顺序性? 2 考点分析 MQ必问话题 考察你是否了解顺序性 考察你是否有办法保证消息的顺序性,因为这是生产系统中常见的一个问题. 3 详解 3.0 案例 一个MySQL binlog同步系统,日同步数据达到上亿. 在MySQL里增删改一条

  • avatar 服务端研究员 2019-06-24 23:09:13

    MySQL8.0实战(二) - 数据库设计

    1 简介 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。 数据库设计的设计内容包括:需求分析

  • avatar 咸糖 2019-06-30 23:04:50

    1000 行代码实现 Servlet 容器

    这坑开了有三个多月了,是今年春招的时候开始写的方轮子。感觉很多基本的功能都已经完成了,下面分享上来给大家讲下写这个方轮子的心路历程。 起因 起初在牛客上看到一篇帖子 《震惊!文科生如何三个月转行成为Java工程师? 》 这个作者自己写了一个HTTP server ,我突然想到为什么我不去实现一个

    来自 咸糖
    01
  • avatar 服务端研究员 2019-06-23 04:43:11

    Go实战抢红包系统(三) - 基础实施层coding

    1 Go的枚举 1.1 定义常数实现枚举 ◆ 类型别名的形式来声明类型 ◆ iota来自增和自动赋值 显然输出为2 这样亦可. 1.2 何时可用iota ,何时又不可用iota呢? ◆ 无状态且非持久化,可以使用iota ◆ 有状态或者需要持久化,不能使用iota 1.3 显式iota

  • avatar 服务端研究员 2019-06-23 04:38:33

    MySQL8.0实战(二) - 数据库的选型

    本文主要内容就是来比较一下常见的两种数据存储系统关系型数据库和非关系型数据库的主要特点,以及他们各自适用的场景,让我们在做出选择时不再迷茫。 1 SQL VS NoSQL 2 关系型数据库的特点和适用场景 2.1 关系数据库的特点 2.1.1 数据结构化存储在二维表中 2.1.

  • avatar 咸糖 2018-05-02 11:41:18

    js getElementsByName 返回undefined

    因为使用的时候name 所以 反悔的会是一个列表  所以最好就取第一个数值 牛逼

    来自 咸糖
    00
  • avatar 服务端研究员 2019-06-21 17:43:23

    Mac下载安装RabbitMQ

    Management Plugin enabled by default at http://localhost:15672 To have launchd start rabbitmq now and restart at login: brew services start rabbitmq

  • avatar 服务端研究员 2019-06-18 00:55:47

    Flink实战(三) - 编程范式及核心概念

    1 基本的 API 概念 Flink程序是实现分布式集合转换的常规程序(例如,过滤,映射,更新状态,加入,分组,定义窗口,聚合)。最初从源创建集合(例如,通过从文件,kafka主题或从本地的内存集合中读取)。结果通过接收器返回,接收器可以例如将数据写入(分布式)文件或标准输出(例如,命令行终端)。

  • avatar 咸糖 2018-02-24 23:40:23

    learnDjango 3

    as_p()¶ <dl class="method"> <dt style="font&#45;family&#58;Roboto&#44; Corbel&#44; Avenir&#44; &#39

    来自 咸糖
    00
  • avatar 服务端研究员 2019-06-13 01:03:22

    分布式日志收集框架 Flume

    1 需求分析 WebServer/ApplicationServer分散在各个机器上,然而我们依旧想在Hadoop平台上进行统计分析,如何将日志收集到Hadoop平台呢? 简单的这样吗? shell cp hadoop集群的机器上; hadoop fs -put ... / 显

  • avatar 咸糖 2018-02-21 00:04:21

    爬虫下载添加进度条

    def report(count, blockSize, totalSize): percent = int(count*blockSize*100/totalSize) sys.stdout.write("\r%d%%" % percent + ' complete')

    来自 咸糖
    00
  • avatar 咸糖 2018-02-19 23:14:35

    Python标准库函数OS

    os.path.basename(path)  返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素 os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.p

    来自 咸糖
    01
  • avatar 咸糖 2018-02-18 18:16:39

    增加爬虫开发脚本整理

    class trancookie: def __init__(self,cookie): self.cookie=cookie def stringtoDict(self): itemDict={} items =self.cooki

    来自 咸糖
    00
  • avatar 咸糖 2018-02-17 14:41:12

    learn git 廖雪峰GIT教材2 解决冲突&amp;amp;amp;&amp;amp;amp;分支管理策略

    pipidi@pipidi-ThinkPad-E555:~/learngit$ git merge feature Auto-merging learngit/readme.txt CONFLICT (content): Merge conflict in learngit/readme.txt A

    来自 咸糖
    00
  • avatar 咸糖 2018-02-17 13:48:16

    learn git 廖雪峰GIT教材1 创建与合并分支

    git checkout命令加上-b参数表示创建并切换,相当于以下两条命令: checkout 表示切换 切换到dev分支上 $ git branch dev $ git checkout dev Switched to branch 'dev' 简单说git 创建了dev 分支 说明git存在了两

    来自 咸糖
    00
  • avatar 服务端研究员 2019-06-05 23:14:16

    Netty源码阅读入门实战(六)-pipeline

    1 pipeline概述 2 pipeline初始化 看看其一个实现类 基本数据结构组件 3 添加ChannelHandler 先看看用户代码 6 outBound事件的传播

  • avatar 咸糖 2018-02-18 00:26:07

    learn Django 笔记 遇到的坑!

    from django.urls import reverse#Django 2.0 remove django.core.urlresolver Django 2.0 移除了django.core.urlresolver 模块 转换为django.urls 代替 python manage.py

    来自 咸糖
    00
  • avatar 服务端研究员 2019-05-22 01:09:40

    Spark Sreaming实战(二)-小试流式处理

    1 业务分析 1.1 需求 统计主站每个(指定)教程访问的客户端、地域信息分布 地域: ip转换 Spark SQL项目实战 客户端:useragent获取 Hadoop基础教程 =》如上两个操作:采用离线(Spark/MapReduce )的方式进行统计 1.2 实现步骤 课程编号、i

  • avatar 服务端研究员 2019-05-22 00:42:15

    突破Java面试(53)- 分布式架构的演进过程

    目标 了解分布式架构中的相关概念 初始分布式架构及意义 分布式架构的发展过程和历史 分布式架构的演进过程 构建分布式架构最重要的因素 1 分布式架构的发展历史 1946 年情人节(2.14) , 世界上第一台电子数字计算机诞生在美 国宾夕法尼亚大学大学,它的名字是:E

  • avatar 服务端研究员 2019-05-20 17:54:39

    突破Java面试(50)-分库分表之后全局id的生成

    1 面试题 分库分表之后,id主键如何处理? 2 考点分析 其实这是分库分表之后你必然要面对的一个问题,就是id咋生成?因为要是分成多个表之后,每个表都是从1开始累加,那肯定不对啊,需要一个全局唯一的id来支持。所以这都是你实际生产环境中必须考虑的问题。 3 面试题详解 3.1 数据库自增

  • avatar 咸糖 2018-03-01 15:02:02

    爬虫遭遇状态码521陷阱 破解js加密cookie

    最近接了个小单,遇到一个很头疼的问题,返回的状态码无限521,在网上查阅了各种资料后,终于解决了问题返回200。 首先咱们先贴上网址:点击打开链接 首先我们按照传统的方法: import requests headers={ 'User-Agent':'Mozilla/5.0 (X1

    来自 咸糖
    00
  • avatar 咸糖 2019-02-24 20:33:07

    Java 如何区分==与.equals()方法

    一般来说equals()和"=="运算符是用来比较两个对象是否相等,但是这两者之前还是有许多不同: 最主要的不同是.equals()是方法,==是运算符。 使用==来进行引用的比较,指的是是否指向同一内存地址。使用.equals()来进行对象内容的比较,比较值。

    来自 咸糖
    00
  • avatar 服务端研究员 2019-05-16 18:03:48

    突破Java面试(5)- 消息队列技术选型

    1 面试题 消息队列(以下简称MQ),面试必问技术,工作必会技术,掌握它,是你的义务!!! 为什么使用MQ啊? MQ有什么优点和缺点啊? kafka、activemq、rabbitmq、rocketmq都有什么区别以及适合哪些场景? 2 考点分析 其实面试官主要是想看看:

  • avatar 服务端研究员 2019-05-16 15:18:27

    Spark Sreaming实战(一)-教程概述

    1 实战目标 至今实战教程的访问量 至今从搜索引擎引流过来的实战教程的访问量 2 实战流程 3 可视化显示 使用Spring Boot整合Echarts 阿里云DataV数据可视化框架 4 教程概要 5 计划 整合Flume、Kafka、 Sp

  • avatar 服务端研究员 2019-05-16 15:04:28

    1

    1 面试题 分布式服务接口请求的顺序性如何保证? 2 考点分析 其实分布式系统接口的调用顺序,也是个问题,一般来说是不用保证顺序的。但是有的时候可能确实是需要严格的顺序保证。给大家举个例子,你服务A调用服务B,先插入再删除。好,结果俩请求过去了,落在不同机器上,可能插入请求因为某些原因执行慢了

  • avatar 服务端研究员 2019-07-01 06:51:51

    RabbitMQ实战(三)-高级特性

    0 相关源码 1 你将学到 如何保证消息百分百投递成功 幂等性 如何避免海量订单生成时消息的重复消费 Confirm确认消息、Return返回消息 自定义消费者 消息的ACK与重回队列 限流 TTL 死信队列 2 保证消息的百分百投递成功 2.1 P

  • avatar 服务端研究员 2019-05-18 14:52:01

    突破Java面试

    02_redis如何在保持读写分离+高可用的架构下,还能横向扩容支撑1T+海量数据1、单机redis在海量数据面前的瓶颈 2、怎么才能够突破单机瓶颈,让redis支撑海量数据? 3、redis的集群架构 redis cluster 支撑N个redis master node,每个master

  • avatar 服务端研究员 2019-05-16 11:55:52

    突破Java面试(34)-dubbo支持的协议

    1 面试题 dubbo支持哪些通信协议?支持哪些序列化协议? 2 考点分析 上一个问题,说说dubbo的基本工作原理,那是你必须知道的,至少知道dubbo分成哪些层,然后平时怎么发起rpc请求的,注册、发现、调用,这些是基本的。 接着就可以针对底层进行深入的问问了,比如第一步就可以先问问序列

  • avatar 服务端研究员 2019-05-16 11:29:39

    突破Java面试(33)-Dubbo的工作原理

    1 面试题 说一下的dubbo的工作原理? 注册中心挂了可以继续通信吗? 说说一次rpc请求的流程? 2 考点分析 MQ、ES、Redis、Dubbo,上来先问你一些思考的问题,原理(kafka高可用架构原理、es分布式架构原理、redis线程模型原理、Dubbo工作原理),

  • avatar 服务端研究员 2019-05-15 16:22:39

    突破Java面试(31)-分布式系统连环炮

    0 导读 有一些同学,之前呢主要是做传统行业,外包项目,互联网公司,一直是那种小的公司,技术一直都搞的比较简单。共同的一个问题,就是都没怎么搞过分布式系统,现在互联网公司,一般都是做分布式的系统,大家都不是做底层的分布式系统,分布式存储系统,hadoop hdfs,分布式计算系统,hadoop m

  • avatar 服务端研究员 2019-05-13 14:58:50

    Go实战抢红包系统(一)-简介

    如果你是 企业工作的程序猿/媛 想要在科技竞赛中勇夺桂冠的有志青年 技多不压身对Go和微服务感兴趣攻城狮 校园毕业设计,项目面试,实习经验 你将掌握 独立从0到1 搭建整个Go红包项目 学会如何从需求到交

  • avatar 服务端研究员 2019-05-13 11:24:28

    突破Java面试(8)-MQ的数据去哪了

    1 面试题 如何保证消息的可靠性传输(如何处理消息丢失的问题)? 2 考点分析 这个是肯定的,用mq有个基本原则,就是数据不能多一条,也不能少一条,不能多,就是刚才说的重复消费和幂等性问题。不能少,就是说这数据别搞丢了。那这个问题你必须得考虑一下。 如果说你这个是用mq来传递非常核心的消息,

  • avatar 服务端研究员 2019-05-11 20:00:42

    突破Java面试(19) - 直面分布式缓存

    1 面试题 在项目中缓存是如何使用的?缓存如果使用不当会造成什么后果? 2 考点分析 这个问题,互联网公司必问,要是一个人连缓存都不太清楚,那确实比较尴尬 只要问到缓存,上来第一个问题,肯定能是先问问你项目哪里用了缓存?为啥要用?不用行不行?如果用了以后可能会有什么不良的后果? 这就是看看

  • avatar 服务端研究员 2019-05-10 21:40:01

    突破Java面试(27) - 如何保证缓存与数据库的数据一致性

    1 面试题 如何保证缓存与数据库的双写一致性? 2 考点分析 你只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题? 3 详解 一般来说,就是如果你的系统不是严格要求缓存+数据库必须一致性的话,缓存可以稍微的跟数据库偶尔有不

  • avatar 服务端研究员 2019-05-09 17:56:22

    突破Java面试(28) - 如何解决Redis的并发竞争问题

    1 面试题 redis的并发竞争问题是什么?如何解决这个问题?了解Redis事务的CAS方案吗? 2 考点分析 这个也是线上非常常见的一个问题,就是多客户端同时并发写一个key,可能本来应该先到的数据后到了,导致数据版本错了。或者是多客户端同时获取一个key,修改值之后再写回去,只要顺序错了,

  • avatar 服务端研究员 2019-05-08 21:09:36

    利用 Python 分析 MovieLens 1M 数据集

    1 数据集简介 MovieLens数据集是一个关于电影评分的数据集,里面包含了从IMDB, The Movie DataBase上面得到的用户对电影的评分信息,详细请看下面的介绍。 1 links.csv 文件里面的内容是帮助你如何通过网站id在对应网站上找到对应的电影链接的。 1.1

  • avatar 服务端研究员 2019-05-08 17:02:32

    突破Java面试-hystrix分布式系统可用性及设计原则

    1 Hystrix是什么? 在分布式系统中,每个服务都可能会调用很多其他服务,被调用的那些服务就是依赖服务,有的时候某些依赖服务出现故障也是很正常的。 Hystrix可以让我们在分布式系统中对服务间的调用进行控制,加入一些调用延迟或者依赖故障的容错机制。 Hystrix通过将依赖服务进行资源隔

  • avatar 服务端研究员 2019-05-06 22:31:40

    突破Java面试(02) - Redis如何通过读写分离来承载读请求QPS超过10万+?

    1 Redis高并发跟整个系统的高并发之间的关系 Redis,你要搞高并发的话,不可避免,要把底层的缓存搞得很好 MySQL高并发,做到了,那么也是通过一系列复杂的分库分表,订单系统,事务要求的,QPS到几万,比较高了 要做一些电商的商品详情页,真正的超高并发,QPS上十万,甚至是百万,一秒钟

  • avatar 服务端研究员 2019-05-06 19:33:30

    ALS算法解析

    1 前言 Spark平台推出至今已经地带到2.4.x版本,很多地方都有了重要的更新,加入了很多新的东西。 但是在协同过滤这一块却一直以来都只有ALS一种算法。 同样是大规模计算平台,Hadoop中的机器学习算法库Mahout就集成了多种推荐算法,不但有user-cf和item-cf这种经典算法,还

  • avatar 服务端研究员 2019-05-05 23:19:00

    Apache Flink实战(二) - 第一个Flink应用程序

    动手搭建Flink的开发环境,快速使用Java和Scala语言开发第一个基于Flink的批处理和流式处理的应用程序。 相关源码 下载安装 brew install apache-flink 1 需求描述 Flink开发批处理应用程序 需求:词频统计(word count)

  • avatar 服务端研究员 2019-05-05 21:03:04

    可能是推荐系统最详细且简单的入门教程

    本文将深入介绍推荐系统的工作原理,和其中涉及的各种推荐机制,以及它们各自的优缺点和适用场景,帮助用户清楚的了解和快速构建适合自己的推荐系统。 1 信息发现 随着 Web 2.0 的发展, Web 已经变成数据分享的平台,如何让人们在海量的数据中想要找到他们需要的信息将变得越来越难。 在这样的情

  • avatar 服务端研究员 2019-06-25 14:13:30

    突破Java面试(06)-如何保证消息队列的高可用性

    1 面试题 如何保证消息队列的高可用性 2 考点分析 高可用是必问的,因为MQ的缺点很多,导致系统可用性降低。 所以只要你用了MQ,接下来问的一些要点肯定就是围绕着MQ的那些缺点怎么解决. 要是你傻乎乎的就干用了一个MQ,各种问题从来没考虑过,那你就杯具了,面试官对你的印象就是,只会简单实用

  • avatar 服务端研究员 2019-06-25 13:03:11

    突破Java面试(01)-现代互联网java工程师招聘JD

    上面是我在拉钩随便找的一个职位,你现在去随便找个职位jd,起码都有这些要素,java基本功是起码的,那些开源框架也是起码的,但是这几年跟前几年不一样的一点在于,现在招聘java,一般都会加一句,要求熟悉分布式系统开发,包括缓存、消息队列、搜索引擎等等,然后要求熟悉dubbo等服务框架。 这就是现在

  • avatar 服务端研究员 2019-06-22 20:20:15

    Go实战抢红包系统(三)-架构设计

    1 代码架构的意义 代码架构就是详细设计中的核心内容! 1.1 代码架构承上启下,决定软件质量 ◆ 承上 说明业务逻辑和业务领域模型 ◆ 本身 保证代码有更好的可读性和可维护性、可扩展性 ◆ 启下 承载代码运行的硬件部署架构 2 代码架构的操作 2.1 业务逻辑表达 向上沟通,提供交

  • avatar 服务端研究员 2019-05-14 13:02:46

    突破Java面试(7)-如何保证消息消费时的幂等性

    1 面试题 如何保证消息消费时的幂等性? 2 考点分析 既然是消费消息,那肯定要考虑考虑会不会重复消费,能不能避免重复消费,或者重复消费了也别造成系统异常可以吗. 这个是MQ领域的基本问题,其实本质上还是问你使用消息队列如何保证幂等性,这个是你架构里要考虑的一个问题。 面试官问你,肯定是必问

  • avatar 服务端研究员 2019-04-26 16:25:31

    升级至macOS 10.14 Mojave后Caps lock(大写键)无法使用的解决办法

    苹果最近发布了macOS 10.14 Mojave开发者测试版,喜欢尝鲜的用户可以自行搜索资源下载体验,不过对于普通用户而言不建议使用开发者测试版。当你升级至macOS 10.14 Mojave后默认情况下无法使用Caps lock(大写键),这是由于系统默认设置将该键用作了切换回英文。要解决这个问

  • avatar 服务端研究员 2019-04-22 15:28:41

    macOS下 Hive 2.x 的安装与配置

    1 简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的[SQL]查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用

  • avatar 服务端研究员 2019-04-21 14:23:08

    Spark机器学习实战 (十二) - 推荐系统实战

    0 相关源码 将结合前述知识进行综合实战,以达到所学即所用。在推荐系统项目中,讲解了推荐系统基本原理以及实现推荐系统的架构思路,有其他相关研发经验基础的同学可以结合以往的经验,实现自己的推荐系统。 1 推荐系统简介 1.1 什么是推荐系统 1.2 推荐系统的作用 1.2.1 帮助顾

  • avatar 服务端研究员 2019-04-19 21:21:23

    Spark机器学习实战 (十一) - 文本情感分类项目实战

    0 相关源码 将结合前述知识进行综合实战,以达到所学即所用。文本情感分类这个项目会将分类算法、文本特征提取算法等进行关联,使大家能够对Spark的具体应用有一个整体的感知与了解。 1 项目总体概况 2 数据集概述 数据集 3 数据预处理 4 文本特征提取 官方文档

  • avatar 服务端研究员 2019-04-18 16:00:18

    基于Spark的机器学习实践 (十) - 降维

    通过讲解PCA算法的原理,使大家明白降维算法的大致原理,以及能够实现怎么样的功能。结合应用降维算法在分类算法使用之前进行预处理的实践,帮助大家体会算法的作用。 0 相关源码 1 PCA算法及原理概述 1.1 何为降维? ◆ 从高维度变为低维度的过程就是降维 ◆ 例如拍照就是把处在三维空间中

  • avatar 服务端研究员 2019-04-17 18:51:53

    基于Spark的机器学习实践 (九) - 聚类算法

    0 相关源码 1 k-平均算法(k-means clustering)概述 1.1 回顾无监督学习 ◆ 分类、回归都属于监督学习 ◆ 无监督学习是不需要用户去指定标签的 ◆ 而我们看到的分类、回归算法都需要用户输入的训练数据集中给定一个个明确的y值 1.2 k-平均算法与无监督学习 ◆

  • avatar 服务端研究员 2019-04-16 22:04:13

    基于Spark的机器学习实践 (八) - 分类算法

    0 相关源码 1 朴素贝叶斯算法及原理概述 1.1 朴素贝叶斯简介 ◆ 朴素贝叶斯算法是基于贝叶斯定理和特征条件独立假设的一种分类方法 ◆ 朴素贝叶斯算法是一种基于联合概率分布的统计学习方法 ◆ 朴素贝叶斯算法实现简单,效果良好,是一种常用的机器学习方法 1.2 贝叶斯定理 ◆ 朴素贝

  • avatar 服务端研究员 2019-04-15 14:56:13

    基于Spark的机器学习实践 (七) - 回归算法

    0 相关源码 1 回归分析概述 1.1 回归分析介绍 ◆ 回归与分类类似,只不过回归的预测结果是连续的,而分类的预测结果是离散的 ◆ 如此,使得很多回归与分类的模型可以经过改动而通用 ◆ 因此对于回归和分类中基本原理相同或类似的模型 ,不再赘述 1.2 Spark中集成的回归算法 ◆

  • avatar 服务端研究员 2019-04-09 17:26:55

    基于Spark的机器学习实践 (四) - 数据可视化

    0 相关源码 1 数据可视化的作用及常用方法 1.1 为什么要数据可视化 1.1.1 何为数据可视化? ◆ 将数据以图形图像的形式展现出来 ◆ 人类可以对三维及以下的数据产生直观的感受 1.1.2 数据可视化的好处 ◆ 便于人们发现与理解数据蕴含的信息 ◆ 便于人们进行讨论 1.2

  • avatar 服务端研究员 2019-04-09 15:40:08

    基于Spark的机器学习实践 (三) - 实战环境搭建

    0 相关源码 1 Spark环境安装 ◆ Spark 由scala语言编写,提供多种语言接口,需要JVM ◆ 官方为我们提供了Spark 编译好的版本,可以不必进行手动编译 ◆ Spark安装不难,配置需要注意,并且不一定需要Hadoop环境 下载 解压 t

  • avatar 服务端研究员 2019-04-09 00:07:13

    基于Spark的机器学习实践 (二) - 初识MLlib

    1 MLlib概述 1.1 MLlib 介绍 ◆ 是基于Spark core的机器学习库,具有Spark的优点 ◆ 底层计算经过优化,比常规编码效率往往要高 ◆ 实现了多种机器学习算法,可以进行模型训练及预测 1.2 Spark MLlib实现的算法 ◆ 逻辑回归 朴素贝叶斯 线性回归

  • avatar 服务端研究员 2019-04-08 18:49:00

    基于Spark的机器学习实践 (一) - 初识机器学习

    1 导学 1.1 开源大数据技术 1.2 提高竞争力必备 1.3 教程规划 1.7 预备知识 了解大数据相关基础知识 熟悉Linux基本命令 熟悉Scala语言的编程方法 有一定的数学基础 1.8 环境参数 Spark : 2.

  • avatar 服务端研究员 2019-04-04 17:05:33

    重磅 Spring Boot 2.1.4 正式版发布!

    期待已久的Spring Boot 2.1.4 RELEASE版本已于今天四月初正式发布! Spring Boot版本很多,作为使用Spring Boot的技术人而言,版本的选择也尤为重要 登录 官网 不难发现 Spring Boot已默更新到Spring Boot 2.1.4版本

  • avatar 服务端研究员 2019-03-31 20:03:11

    大数据入门(二)---初识-Hadoop

    联系我 Java开发技术交流Q群 gayhub

  • avatar 服务端研究员 2019-03-25 20:22:33

    Python分布式爬虫框架Scrapy 打造搜索引擎(四) - 爬取博客网站

    相关源码 搭建scrapy的开发环境,本文介绍scrapy的常用命令以及工程目录结构分析,本文中也会详细的讲解xpath和css选择器的使用。然后通过scrapy提供的spider完成所有文章的爬取。然后详细讲解item以及item loader方式完成具体字段的提取后使用scrapy提供的pip

  • avatar 服务端研究员 2019-03-13 12:18:29

    reactive stream 响应式流

    1 初识Reactive Stream 反应式流 2015 年反应式流 (Reactive Stream) 规范诞生,定义了如下四个接口: Subscription 接口定义了连接发布者和订阅者的方法 Publisher 接口定义了发布者的方法 Subscriber 接口定义了订

  • avatar 服务端研究员 2019-03-11 21:47:18

    MySQL 8.0从入门到精通

    新的更安全更快的的认证方式 密码管理 5.7中无密码管理 新增三个密码管理相关配置项 password_histroy=3 (不能和最近三次使用过的密码相同) password_reuse_interval=90 (不能和最近90天使用过的密码相同) password_require_c

  • avatar 服务端研究员 2019-03-06 13:42:19

    Redis键过期策略

    1、设置过期时间 expire key time(s)–这是最常用的方式 setex(String key, int seconds, String value)–字符串独有的方式 注意: 除了string独有设置过期时间方法,其他类型都需要依靠expire方法来设置时间

  • avatar 服务端研究员 2019-05-09 17:30:49

    突破Java面试(30) - 分布式缓存面试题回答技巧总结

    这套东西基本构成了缓存这块你必须知道的基础性的知识,如果你不知道,那么说明你有点懒惰了,平时没好好积累。 因为这些问题确实不难,如果往深了问,可以问的很细,结合项目扣的很细 比如你们公司线上系统高峰QPS 3000? 那请求主要访问哪些接口? redis抗了多少请求? mysql抗了多少请求? 你

  • avatar 服务端研究员 2019-04-12 19:04:17

    基于Spark的机器学习实践 (六) - 基础统计模块

    0 相关源码 1 基础统计模块及常用统计学知识介绍 ◆ Spark 的基础统计模块即MLlib组件中的Basic Statistics部分 ◆ Basic Statistics主要包括Correlation 与Hypothesis testing等 ◆ 其大多被封装在orq.apache s

  • avatar 服务端研究员 2019-03-05 17:39:53

    Redis分片(分布式缓存)

    分片(partitioning)就是将你的数据拆分到多个 Redis 实例的过程,这样每个实例将只包含所有键的子集. 1 分片何用 Redis 的分片承担着两个主要目标: 允许使用很多电脑的内存总和来支持更大的数据库。没有分片,你就被局限于单机能支持的内存容量。 允许伸缩计算能力到多

  • avatar 服务端研究员 2019-03-01 16:45:35

    分布式事务实战(一) - 简介

    微服务系统的最大挑战 设计安排 Springcloud微服务系统实例 Event Sourcing 系统实例读写服务分离 适合人群 预备基础 环境参数 学习成果 学习成果-实战

  • avatar 服务端研究员 2019-03-01 16:04:06

    基于协同过滤算法的电影推荐系统设计(二) - ALS算法详解

    0 系列文章目录 0.1 基于协同过滤算法的电影推荐系统设计(一) - 项目简介 0.2 基于协同过滤算法的电影推荐系统设计(二) - 推荐系统介绍 ALS是alternating least squares的缩写 , 意为交替最小二乘法,而ALS-WR是alternating-least-s

  • avatar 服务端研究员 2019-03-01 14:21:44

    基于协同过滤算法的电影推荐系统设计(一) - 项目简介

    由于本人今年毕业,为完成毕设特地想着实现一个简单的推荐系统设计,思来想去,***不就是很好的切入点嘛! 于是诞生该项目,将会一步步带着大家实现一个自己的电影推荐系统. 1 研究目标 从应用场景来看,基于内容的推荐算法更多地适用于用户根据关键字或者电影名字来搜索相应的电影,然后推荐系统来进行相应的

  • avatar 服务端研究员 2019-03-01 11:51:00

    库存管理接口设计

    最近在南京一家数据公司实习,负责商城类项目,并且接到写库存管理接口的任务,话不多说,看看 数据表字段的设计 原型图设计 接口设计 对照下数据表与原型图,开始设计接口了 入库接口设计V1.0 由于是在后台管理的商品列表界面点击库存按钮进行编辑 出库接口设计V1.0

  • avatar 服务端研究员 2019-02-27 20:23:49

    Kafka的安装与使用

    0 Java消息服务(Java Message Service,JMS) Java消息服务(Java Message Service,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与

  • avatar 服务端研究员 2019-02-25 21:49:54

    文件服务器存储解决方案探索

    1 定义 文件服务器(file servers)是一种器件,它的功能就是向服务器提供文件。 它加强了存储器的功能,简化了网络数据的管理。 它一则改善了系统的性能,提高了数据的可用性,二则减少了管理的复杂程度,降低了运营费用。 2 简介 在C/S模式下,文件服务器(file server)是一台

  • avatar 服务端研究员 2019-02-22 16:25:02

    Netty源码实战(十一) - 设计模式的应用

    1 单例模式 1.1 Netty 实例 1.1.1 ReadTimeoutException 可以看出,构造器私有,防止随意创建 static保证延迟加载 1.1.2 MqttEncoder 2 策略模式 3 装饰者模式 Netty 实践

  • avatar 服务端研究员 2019-02-21 17:13:38

    Netty源码实战(十) - 性能优化

    1 性能优化工具类 1.1 FastThreadLocal 1.1.1 传统的ThreadLocal ThreadLocal最常用的两个接口是set和get 最常见的应用场景为在线程上下文之间传递信息,使得用户不受复杂代码逻辑的影响 public void set(T value) {

  • avatar 服务端研究员 2019-02-21 10:38:06

    Netty源码实战(十一) --- 设计模式的应用

    1 单例模式 1.1 Netty 实例 1.1.1 ReadTimeoutException 可以看出,构造器私有,防止随意创建 static保证延迟加载 1.1.2 MqttEncoder 2 策略模式 3 装饰者模式 Netty 实践

  • avatar 服务端研究员 2019-02-14 14:48:17

    Vue2.5 零基础开发去哪儿网实战(二) - 起步 Vue.js

    联系我 1.Java开发技术交流Q群 2.完整博客链接 3.个人知乎 4.gayhub 本文源码 本章将快速讲解部分 Vue 基础语法,通过 TodoList 功能的编写,在熟悉基础语法的基础上,扩展解析 MVVM 模式及前端组件化的概念及优势。 1 最简单的案例 下载安装

  • avatar 服务端研究员 2019-01-19 19:35:11

    Java源码解析 - ThreadPoolExecutor 线程池

    联系我 1.Q群【Java开发技术交流】:https://jq.qq.com/?_wv=1027&k=5UB4P1T 2.完整博客链接:www.shishusheng.com 3.知乎:http://www.zhihu.com/people/shi-shu-sheng- 4.gayhub

  • avatar 服务端研究员 2019-01-16 15:07:05

    设计模式实战-策略模式(Strategy Pattern)

    0 联系我 1.Q群【Java开发技术交流】:https://jq.qq.com/?_wv=1027&k=5UB4P1T 2.完整博客链接:www.shishusheng.com 3.知乎:http://www.zhihu.com/people/shi-shu-sheng- 4.gayh

  • avatar 服务端研究员 2019-01-13 16:56:12

    电商数据库设计及架构优化实战(一) - 制定数据库开发规范

    2 准备工作 3 项目说明 4 数据库设计规范 5 数据库命名规范总结 6 数据库基础设计规范 总结 7 数据库索引设计规范 覆盖索引 外键 MySQL 建立外键时,会自动在外键建立索引

  • avatar 服务端研究员 2019-01-11 14:15:31

    Java 集合源码解析 - ConcurrentHashMap(从7到8的变迁)

    ConcurrentHashMap是线程安全且高效的HashMap 1 为什么要使用ConcurrentHashMap 线程不安全的HashMap HashMap是Java中最常用的一个Map类,性能好、速度快,但不能保证线程安全,它可用null作为key/value HashMap的线程

  • avatar 服务端研究员 2018-12-28 22:56:36

    聊聊字典编码

    最近由于课程设计需要做解压缩算法 特此来考察字典编码 1 导论 许多场合,开始时不知道要编码数据的统计特性,也不一定允许你事先知道它们的统计特性。因此,人们提出了许许多多的数据压缩方法,企图用来对这些数据进行压缩编码,在实际编码过程中以尽可能获得最大的压缩比。这些技术统称为通用编码技术。 字典

  • avatar 服务端研究员 2018-12-26 03:40:47

    窥探推荐系统

    本文将深入介绍推荐系统的工作原理,和其中涉及的各种推荐机制,以及它们各自的优缺点和适用场景,帮助用户清楚的了解和快速构建适合自己的推荐系统。 1 信息发现 随着 Web 2.0 的发展, Web 已经变成数据分享的平台,如何让人们在海量的数据中想要找到他们需要的信息将变得越来越难。 在这样的情

  • avatar 服务端研究员 2019-03-05 16:50:08

    Latex 论文公式编辑五分钟从入门到死亡

    为了做个毕设,真是难为了自己了,速成Latex,分享下这玩意入门到底有多恶心. 先看看个需求吧! 1 第一个公式 这玩意是个啥呢? 下标,普通乘法,约等于.上标? 恩,似乎也没什么玩意,那就看看在Latex中如何表达吧 \begin{equation} R_{m\times n} \ap

  • avatar 服务端研究员 2019-03-01 14:38:48

    基于协同过滤算法的电影推荐系统设计(二) - 推荐系统介绍

    本文将深入介绍推荐系统的工作原理,和其中涉及的各种推荐机制,以及它们各自的优缺点和适用场景,帮助用户清楚的了解和快速构建适合自己的推荐系统。 0 系列文章目录 0.1 基于协同过滤算法的电影推荐系统设计(一) - 项目简介 0.2 基于协同过滤算法的电影推荐系统设计(二) - 推荐系统介绍