V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  whp1473  ›  全部回复第 25 页 / 共 45 页
回复总数  890
1 ... 21  22  23  24  25  26  27  28  29  30 ... 45  
2020-09-17 10:42:13 +08:00
回复了 youla 创建的主题 Java 请问 Java 怎么防止内存溢出?
@youla JVM 会自动关闭并回收,但是一般都应手动关闭,否则会一直占用无用资源。更多的情况应该是阻塞导致的。还有如果有 static 要注意,比如这种 private List<对象> list = new ArrayList<>(); list 中放入 IO,那永远不会被释放。
对于 es,数据过多深度分页时,可以考虑通过游标来进行查询,比直接使用分页效率高。
实时性高效率查询,只有用内存才能办到,对 item_id 的状态进行保存,比如 Redis 使用 Hash 结构,key 保存用户 ID,Map 里保存推荐商品 ID 和状态,每个用户持有不同的推荐商品状态。Redis 和数据库同步可以考虑同步代码,也可以用消息中间件解耦,但要考虑消息的消费速率。
2020-09-16 16:57:12 +08:00
回复了 youla 创建的主题 Java 请问 Java 怎么防止内存溢出?
首先你确定是这个类造成的么?
第一、Test t=new Test(); t.start();创建后方法出栈就会判定为可回收了,gc 会自动垃圾回收。如果不确定,用 JVM VisualVM 分析 dump 日志,找到堆中最多的类,分析为什么该类被一直持有
第二、Test t=new Test(); t.start();如果是一个线程,一直运行,那说明里面有 while 死循环,并一直持有对象的地址和一直 new 对象导致,也可能是阻塞导致对象不被释放,比如 Http 不设置超时时间等。如果是古老的包,可以考虑继承、代理模式、AOP 等方式替换接口实现,来修复该 BUG 。
第三、如果都没有问题,Test 就是每个用户请求就要有一个,那建议加大 JVM 堆内存,同时使用更好的机器,以及对机器限流和用 ng 做复杂均衡,将请求均匀分布在更多的机器上
2020-09-16 16:33:51 +08:00
回复了 maro 创建的主题 职场话题 15k 的 12 薪失业 降薪到 10k 的 14 薪 值得去吗
14 薪这东西我从来没见一家公司写到合同里的,月薪才是实实在在的,我们公司以前也说 13 薪+年终,今年疫情导致年终+13 薪根本没找落的。还有期权我也有老多,有啥用?建议不要去
2020-09-16 16:30:57 +08:00
回复了 adgad2 创建的主题 职场话题 杭州,找工作也太难了
杭州主要 Java 和前端,中小公司也都是。大公司还有嵌入式 C 或 C++。然后 Java 面试难度比以前明显高了,以前基本了解就可以,现在有的要说原理的。
2020-09-15 11:49:32 +08:00
回复了 Rxianbei 创建的主题 问与答 现在高校学生的实际编程能力怎么样
朋友帮大学本科计算机专业的写毕业论文赚钱,不缺 985 、211 的本科,大部分学校一个班学的还行其实就 5-10 个人。比如有的一本的学生让他帮忙验证手机号,这么简单的正则都不懂。
2020-09-08 19:04:25 +08:00
回复了 zictos 创建的主题 问与答 互联网公司的短信验证码成本不高吗?
1.首先大公司可以签单独协议,价格大约是你看到的 50%
2.再多可以找运行商签,价格更低
3.app 有自动登录,大部分人都默认选择
4.相对于留存用户变现和融资的钱,这点钱忽略不计
5.接口都会加流控
6.体量非常大,可以考虑用户给服务商发短信,骚操作
@laminux29 你这个是神,设计知识面这么广,还非常深入,那可以考虑聘任清北教授,开发操作系统、专业软件、算法,还跟业务同事成天怼来怼去干嘛。
@dustin2016 后端也有后端的痛苦,有些代码就是屎山,一堆 if else 连个注释也没有,你改就要读一遍代码,还有后端的问题是框架、业务逻辑、ER 设计、流程设计,如果业务复杂要考虑性能,比如负载问题、IO 问题、线程问题、数据库优化问题、分布式中间件应用,你说的 java8 只是语言。如果觉得后端简单可以转后端尝试一下。
(真实)上一个知道这么说的,是一个人贷款然后股市哈索,然后赔惨了,疯狂然后借钱平仓。他说:“想找你借点钱”,问:“你要借多少”,他说:“你手上有多少,不影响你生活,有多少借多少”,问:“大约什么时候还”,他:“分几年慢慢还”,据说身边只要是说过一句话的人,就借。
2020-05-13 19:08:47 +08:00
回复了 toooo 创建的主题 职场话题 写代码又快又好 bug 少是不是一种罪过?
(1)与公司价值观切合,想为奖金和期权奋斗,分好工作后,在工作群里进行工作对接,比如接口定义好了,你看下文档。完成后,过 N 时间(你来定)就主动问组长下面的工作,你不会闲着的。有时候我都我完成 3-4 个任务了,同事还在那里反反复复修第一个任务的 bug,领导都不傻有数。
(2)N 的时间里不要闲着呀,读读技术博客,写写笔记,看看资料。

哪怕做的飞快,要不(1),要不(2),要不离职,要不你收购这家公司,没有其他选项。
2020-04-29 10:58:40 +08:00
回复了 alier 创建的主题 职场话题 离职前夕天和公司同事吵了一架,太气人了
我看不到图片,首先离职了人家没义务回答你问题,回答是情分不回答是本分,尤其是裁员情况。运营人员一直追问是负责,没问题。
遇到这种事情,你要做到事事回应,并且积极响应,抛出问题和解决方案。
(1)群里问你问题,你要说:“收到,现在去排查。”(有回应)
(2)一段时间后,定位好问题,你要说“是之前很多人写的项目,没有文档,存在 BUG,排查起来比较困难,你在整理问题文档,需要时间”(积极处理,落实到文档和邮件)
(3)整理所有问题,然后附上问题所在,解决困难的点,建议解决方案,先给你私下领导看,领导看没问题,就给群里人看,让大家知道你的困难,一人需要 300 人日的工作。(这叫和领导沟通)
(4)过段时间,之后再找你,拉上你领导去找对方和他领导说明。(让对方知道你的困难,他不理解没关系)
(5)让领导住说不在职责范围,你只说困难和你解决方案,以及人手问题。(虽然不在职责范围内,但你说了就是态度问题。你只说自己的努力。)
(6)你要想待下,就 X 天解决一个 BUG,解决了就大群反馈(推进任务)。
(7)人家问新问题你就说找领导(上面领导已知,对方已知,领导就可以出来担责了)
(8)你现在再解决 XX 问题,然后解决后在群里回复(积极反馈)
PS X 天:你想好好干,X 天适度缩短。你想混日子和准备找工作,X 天适度延长。
2020-04-27 10:46:27 +08:00
回复了 noftscom 创建的主题 问与答 一名成绩不好的高三学生求助贴
200 分,70 天,基本没可能了,建议看看有没有办法复读吧,为啥不让复读,好奇。
2020-04-16 10:34:17 +08:00
回复了 hbolive 创建的主题 程序员 千万不要相信码农说的,任务太紧,没时间优化代码
读取一个用户列表,这个列表有些属性要从另外一张表读(比如所在城市),做法是:先读取列表数据成数组,然后再遍历这个数组,遍历的时候再根据城市 id,再去查询地区表,得到城市的名字。

大家说说这个怎么优化,见过很多代码都是这样实现的,其实我倒觉得一般这么查询也没什么,效率低而已,多次请求 DB 。
优化考虑:
(1)设计用户表时冗余显示城市字段,但是这样会造成城市表修改后不变
(2)查询时按照一次性取出所有用户城市,Map<User,城市>形式填充 User
(3)Left join 形式查询,就怕关联表特别多
(4)异构专门的查询表,或异构到 Es 中做查询,性能有保障,会牺牲部分实时性

我们这边的代码,很多都是这样写的,我一般都不会改。改了不算绩效、之前需求产品都说不清是什么、不用多改错一次可能就 3.25 。或者直接找 P7,同时给他时间,别今天需求,明天上线。
2020-04-15 15:24:50 +08:00
回复了 ngzhio2ex 创建的主题 随想 只读有趣的书,不读“必读书”
我觉得读书跟人所在年龄、心境、思想有关,不同的人读同一本书效果可能截然相反。但多读书,读大部分人觉得比较优秀的书,效果一般会好些。
2020-04-14 10:27:08 +08:00
回复了 jfan288 创建的主题 酷工作 帮美国朋友公司招一个高级 Java ,在家办公,全职,拿美元
楼上已经说的很清楚,再补充几点
(1)英语要口语和读写都不错,你要写文档和回邮件,语音交流(英文要求高)
(2)时差,以后你要半夜上班了,怕就怕周末你白天生活,工作日夜晚生活。(黑白颠倒)
(3)短期外包,没有合同,干两月没了,你怎么办。(高风险)

如果是这样没保障,我肯定会要当地工资的 2-3 倍。15K 左右的 2-3 倍,大约 30K-45K 。
我会要 4255.2588$-6382.8882$

如果是弱三线,或自己工资水平 8K 左右,可以考虑大约在 2-3 倍之间。
2020-03-04 17:16:36 +08:00
回复了 huahuacui 创建的主题 程序员 对于微盟事件,怎么来做权限管控呢????
一、中小公司
(1)多备份
(2)钱给够
(3)心别受委屈了(杀父 夺妻)
(4)备份存储独立服务器,CEO 掌管密码
中小公司有的运维就几个人,甚至开发兼职,管理层不懂技术,这种真想删,挡也挡不住,连备份都能一起删了。
二、大公司
(1)独立备份服务器,只有最高层有权限,运维都不能有。或者另一个运维团队管数据备份。
(2)细化权限,至少别让普通开发人员删库跑路
(3)增加备份频率
(4)做到账号一人一个,删了你也好找,有些公司有公用账号,删了都不知道谁。
(5)钱给够 别让员工受太大委屈
三、做一个理智的运维~
0.获得公共账号,多跳板机访问
1.应该先删除备份的所有数据
2.然后再删除 binlog 日志
3.然后再删除从库
4.然后再删除主库
5.然后再使用文件粉碎机 或 手动填满磁盘垃圾文件后删除。覆盖磁盘防止数据找回
6.清除服务器操作日志
7.找到 git maven confluence 所在服务器,重复执行以删除 覆盖操作
8.云服务器记得释放实例
1 ... 21  22  23  24  25  26  27  28  29  30 ... 45  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2791 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 11:59 · PVG 19:59 · LAX 03:59 · JFK 06:59
Developed with CodeLauncher
♥ Do have faith in what you're doing.