我手里维护了一个项目,其功能是用Java模拟一个MariaDB的slave库连接到主库,对从主库传输过来的binlog事件进行监听与分析 碰到一个问题是: 如果主库做了一个很大的修改操作(比方说直接delete了一个百万条数据的表),那么会产生一个很大的binlog事件,这个binlog事件会在我们的binlog监听器中被处理,然后组装成一个很大的对象(含有这100万条数据) 问题就出在这里,这个对象太大了(占用上g的heap毫不费力),然后我们在对这个对象的分析过程中,会产生更多的对象,而这些…