自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 Flutter框架下实现用户行为埋点

用户行为埋点主要是为了采集用户对APP的功能使用情况,包括统计用户的活跃度,用户画像的刻画等等,以明确产品功能的开发、优化方向。我们借助神策数据开源的SDK来实现埋点,这里还需要自己实现服务端数据接收服务;接收到数据后,我们解析后就可以进而加工成符合我们要求的格式,直接存储到数据库或导入其他现有的平台进行后续的用户行为分析、监控等等。

2023-09-28 10:05:46 895

原创 Elasticsearch通过_update_by_query和script批量修改文档

ES批量修改文档

2022-07-11 14:50:03 698 1

原创 ThreadLocal在线程池下使用注意事项

ThreadLocal可以用于保存线程本地变量,在线程之间需要进行数据隔离并保存上下文信息的场景下非常有用。但是实际项目中,往往是在线程池环境下的。比如一个web项目,多个客户端请求的处理往往是借助线程池处理的,并不是给每个请求单独new一个新线程,处理完再销毁;所以这里就存在线程的复用。在线程会被复用的背景下,我们在使用ThreadLocal进行操作时,要特别注意:在进行set操作后,是否在线程结束之前进行了remove操作在进行get操作时,是否在此前已本线程进行了set操作我们假设线程A

2022-02-28 14:53:02 557

原创 volatile关键字使用注意事项

volatile不能保证原子性众所周知,volatile一般用于修饰多线程场景下的公共变量。假设我们有一个公共变量incprivate static volatile int inc;要注意的是,volatile保证的变量i的可见性,也就是各个线程在读取inc时,都能读取到inc变量在主存上的最新值(换句话说,避免“脏读”)。但是,volatile是不能保证在多个线程同时修改inc时的原子性。我们通过一段程序来验证:public static void main(String[]

2021-01-11 17:40:01 253

flutter全埋点环境配置脚本

flutter全埋点环境配置脚本

2023-09-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除