Easter79 Easter79
3年前
springmvc+logback项目日志配置
  最近在做项目的时候用到logback作为项目日志,而抛弃了log4j。具体为什么用logback,我总结了以下几点:  1.log4j和logback的创作者是同一个人,logback是log4j的升级版,是对log4j核心的一个封装。  2.性能提升,在某些特定场景上执行速度提升10倍以上,同时初始化内存更小  3.扩展文档,丰富的并且详细
京东APP百亿级商品与车关系数据检索实践 | 京东云技术团队
本文主要讲解了京东百亿级商品车型适配数据存储结构设计以及怎样实现适配接口的高性能查询。通过京东百亿级数据缓存架构设计实践案例,简单剖析了jimdb的位图(bitmap)函数和lua脚本应用在高性能场景。希望通过本文,读者可以对缓存的内部结构知识有一定了解,并且能够以最小的内存使用代价将位图(bitmap)灵活应用到各个高性能实际场景。
李志宽 李志宽
2年前
android平台注入技术
背景在android系统中,进程之间是相互隔离的,两个进程之间是没办法直接跨进程访问其他进程的空间信息的。那么在android平台中要对某个app进程进行内存操作,并获取目标进程的地址空间内信息或者修改目标进程的地址空间内的私有信息,就需要涉及到注入技术。通过注入技术可以将指定so模块或代码注入到目标进程中,只要注入成功后,就可以进行访问和篡改目标进程空间内
Stella981 Stella981
3年前
ClickHouse在京东流量分析的应用实践
前言ClickHouse是一款开源列式存储的分析型数据库,相较业界OLAP数据库系统,其最核心优势就是极致的查询性能。它实现了向量化执行和SIMD指令,对内存中的列式数据,一个batch调用一次SIMD指令,大幅缩短了计算耗时,带来数倍的性能提升。目前国内社区火热,各大厂也纷纷进入该技术领域的探索。引言本文主要讨论京东黄
Stella981 Stella981
3年前
JVM必备指南
简介Java虚拟机(JVM)是Java应用的运行环境,从一般意义上来讲,JVM是通过规范来定义的一个虚拟的计算机,被设计用来解释执行从Java源码编译而来的字节码。更通俗地说,JVM是指对这个规范的具体实现。这种实现基于严格的指令集和全面的内存模型。另外,JVM也通常被形容为对软件运行时环境的实现。通常JVM实现主要指的是HotSpot。JVM
Stella981 Stella981
3年前
Redis存储方式RDB和AOF介绍及持久化的重要性
更多精彩和干货和你分享前言redis可以干很多事情,我们这里的背景是将redis作为缓存服务器还讨论的。如果部署了一个redis,主从也好,cluster也罢,我将一些数据存储在它上面,如果没有持久化的话,redis只会存储到内存中,那如果遇到灾难性故障,就会丢失所有数据。这对企业级的应用来说,是个噩梦。如果我们能将数据持久化
Wesley13 Wesley13
3年前
Java数组的声明与创建
今天在刷Java题的时候,写惯了C发现忘记了Java数组的操作,遂把以前写的文章发出来温习一下。首先,数组有几种创建方式?Java程序中的数组\\必须先进行初始化才可以使用,\\所谓初始化,就是为数组对象的元素分配内存空间,并为每个数组元素指定初始值,而在Java中,数组是静态的,数组一旦初始化,长度便已经确定,不能再随意更改。
Wesley13 Wesley13
3年前
C语言缓冲区溢出详解
!(https://oscimg.oschina.net/oscnet/7c4c90c77f9d449a96c032d9d3e9f318.jpg)1引言“缓冲区溢出”对现代操作系统与编译器来讲已经不是什么大问题,但是作为一个合格的C/C程序员,还是完全有必要了解它的整个细节。计算机程序一般都会使用到一些内存,这些内
Wesley13 Wesley13
3年前
C++_代码重用2
对于姓名可以使用字符数组来表示,但这将限制姓名的长度。当然,还可以使用char指针和动态内存分配,但这要求提供大量的支持代码。有一个好的方法就是使用一个他人开发好的类的对象来表示。如果C库提供了合适的类,实现起来将更简单。C库确实提供了一个这样的类,它就是valarray。valarray类简介     模板类在使用时需要指定具体数