灯灯灯灯 灯灯灯灯
4年前
阿里面试被问到【垃圾回收器】,不会怎么办??
垃圾回收器GC分类与性能指标垃圾回收器概述1.垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。2.由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。3.从不同角度分析垃圾收集器,可以将GC分为不同的类型。Java不同版本新特性1.语法层面:Lambda表达式、switch、
Easter79 Easter79
3年前
tbox新增stackless协程支持
tbox之前提供的stackfull协程库,虽然切换效率已经非常高了,但是由于每个协程都需要维护一个独立的堆栈,内存空间利用率不是很高,在并发量非常大的时候,内存使用量会相当大。之前考虑过采用stacksegment方式进行内存优化,实现动态增涨,但是这样对性能还是有一定的影响,暂时不去考虑了。最近参考了下boost和protothreads的st
李志宽 李志宽
2年前
网站被黑客攻击了,该怎么办
最好的防御方式就是攻击知己知彼,百战不殆。掌握攻击者的套路才好顶得住攻击。可能我的读者多少了解过Nginx,我先给不了解的同学简单说一下原理。已经了解的跳到第二节。3分钟了解NginxNginx是一款高性能的Web服务器和反向代理服务器。它可以用来搭建网站
Wesley13 Wesley13
3年前
java多线程管理 concurrent包用法详解
我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便。而当针对高质量Java多线程并发程序设计时,为防止死蹦等现象的出现,比如使用java之前的wait()、notify()和synchronized等,每每需要考虑性能、死锁、公平性、
Wesley13 Wesley13
3年前
AI算法岗为什么都要求C++?
当下AI算法大多基于深度学习算法模型,通常在模型训练和验证阶段会采用Python语言快速处理。而在实际应用阶段,则会采用C来调用模型和性能优化,从而提高算法运行效率。所以未来想要深耕AI算法领域,成为资深算法工程师,C是必须掌握的。很多同学一听学C没个23年啃不动,立马条件反射式地放弃。但C真的难学吗?说
Stella981 Stella981
3年前
Android如何调用so文件
前言小编对接的安卓测试项目团队中有部分团队使用C开发项目代码,出于好奇去学习了解了一下在安卓项目中集成C代码的方法,下面和大家分享一下。在安卓开发中经常会遇到需要通过java调用其它语言编写的代码的情况,这主要是由于以下几方面的原因:1.运行效率高:在高性能要求的需求中,使用
Stella981 Stella981
3年前
360深度实践:Flink与Storm协议级对比
奇技指南本文由360系统部大数据计算平台负责人张馨予,在FlinkChina线下社区Meetup的演讲整理而成,首发于高可用架构公众号。作者:张馨予,360大数据计算平台负责人。北京邮电大学硕士,2015年加入360系统部,一直致力于公司大数据计算平台的易用性、稳定性和性能优化的研发工作。目前主要负责Flink的研发,完成公
Stella981 Stella981
3年前
Django中间件
一、Django中间件简介  官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子。它是一个轻量、低级别的插件系统,用于在全局范围内改变Django的输入和输出。每个中间件组件都负责做一些特定的功能。  但是由于其影响的是全局,所以需要谨慎使用,使用不当会影响性能。django中间件就类似于是dja
Stella981 Stella981
3年前
90% 的 Java 程序员都说不上来的为何 Java 代码越执行越快(2)
经常听到Java性能不如C/C的言论,也经常听说Java程序需要预热,那么其中主要原因是啥呢?面试的时候谈到JVM,也有很多面试官喜欢问,为啥Java程序越执行越快呢?一般人都能回答上来,类加载,缓存预热等等,但是深入下去,最重要的却没有答上来,今天本系列文章就来帮助大家理解这个问题的关键。本篇文章是T
Wesley13 Wesley13
3年前
vivo 全球商城:订单中心架构设计与实践
一、背景随着用户量级的快速增长,vivo官方商城v1.0的单体架构逐渐暴露出弊端:模块愈发臃肿、开发效率低下、性能出现瓶颈、系统维护困难。从2017年开始启动的v2.0架构升级,基于业务模块进行垂直的系统物理拆分,拆分出来业务线各司其职,提供服务化的能力,共同支撑主站业务。订单模块是电商系统的交易核心,不断累积的数据即将达到单