直接裂开!京东二面被问SpringBoot整合MongoDB,我不会啊
开始进入正题一、技术介绍@MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是可以应用于各种规模的企业、各个行业以及各类应用程序的开源数据库。作为一个适用于敏捷开发的数据库,MongoDB的数据模式可以随着应用程序的发展而灵活地更新。与此同时,它也为开发人员提供了传统数据库的功能:二级索引,完整的查询系统以及严格一致性等等。
Wesley13 Wesley13
3年前
javaweb之Cookie
1.什么是CookieHttp协议一共有五大特点:1.支持客户/服务器模式;2.简单快速;3.灵活;4.无连接;5.无状态。Http无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。早期这么做的原因是HTTP协议产生于互联网,因此服务器需要处理同时面向全世界数
Wesley13 Wesley13
3年前
BIO、NIO、AIO 介绍和适用场景分析
IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。一、同步阻塞的BIO在JDK1.4之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个serverSocket,然后在客户端启动socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待请求,而客户端发送请求后,先咨询服务端是否
Easter79 Easter79
3年前
SVN的Trunk Branchs Tags
我们在一些著名开源项目的版本库中,通常可以看到trunk,branches,tags等三个目录。由于SVN固有的特点,目录在SVN中并没有特别的意义,但是这三个目录却在大多数开源项目中存在,这是因为这三个目录反映了软件开发的通常模式。trunk是主分支,是日常开发进行的地方。branches是分支。一些阶段性的release版本,这些版本是可以继
Stella981 Stella981
3年前
Skynet 设计综述
1.多线程模式,可以使得状态共享、数据交换更加高效。而多线程模型的诸多弊端,比如复杂的线程锁、线程调度问题等,都可以通过减小底层的规模,精简设计,最终把危害限制在很小的范围内。2.做为核心功能,Skynet仅解决一个问题:把一个符合规范的C模块,从动态库(so文件)中启动起来,绑定一个永不重复(即使模块退出)的数字id做为其handl
Caomeinico Caomeinico
3年前
(转)友盟+短视频行业研究
好买网(www.goodmai.com)2019年1月15日,字节跳动的陈林、云歌人工智能科技的王欣和北京快如科技的罗永浩分别发布了三款社交产品:主打短视频社交的多闪、主打匿名社交的马桶MT和转型为网赚模式的聊天宝。2个月后硝烟散尽,但见一地鸡毛。马桶“夭折”,聊天宝“解散”,对于短视频社交应用“多闪”,好评并不多见,“画地圈人”的质疑倒是若隐若现。友盟基
Wesley13 Wesley13
3年前
MySQL_分库分表
分库分表数据切分  通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。数据的切分同时还能够提高系统的总体可用性,由于单台设备Crash之后,仅仅有总体数据的某一部分不可用,而不是全部的数据。切分模式  数据的切分(Sharding)依据其切分规则的类
可莉 可莉
3年前
2020DevOps状态报告——变更管理
如果你的公司还没有走向平台化,现在仍然可以是很大的飞跃。您仍然可以通过解决公司的变更管理流程来加快软件交付。在本章中,我们将研究我们在公司内部所学的变更管理模式。我们将向您展示什么是有效的,什么是无效的,以及如何利用DevOps原则将变更管理转化为有效的、使能的流程。 在过去的十年里,我们已经看到DevOps的实践颠覆了软件发布团队的工作方式。以下
Stella981 Stella981
3年前
Redis 哨兵节点之间相互自动发现机制(自动重写哨兵节点的配置文件)
Redis的哨兵机制中,如果是多哨兵模式,哨兵节点之间也是可以相互感知的,各种搜索之后出来的是千篇一律的一个基础配置文件,在配置当前哨兵节点的配置文件中,并没有配置其他哨兵节点的任何信息。如下是一个哨兵节点的配置信息,可以看到,哨兵与哨兵之间没有任何配置,死活想不明白,哨兵之间是如何自动识别的。sentinel端口port
什么是网络爬虫?
什么是网络爬虫网络爬虫是一种在Internet上运行自动化任务的软件应用程序。与人类互联网活动相比,网络爬虫运行的任务通常很简单,并且执行速度要快得多。有些机器人是合法的——例如,Googlebot是Google用来抓取互联网并将其编入索引以进行搜索的应用程序。其他机器人是恶意的——例如,用于自动扫描网站以查找软件漏洞并执行简单攻击模式的机器人。