文章11
标签6
分类3

【持续更新】BanShrimp——肖战227事件

可能的根本原因:《陈情令》

《陈情令》给肖战带来了不少粉丝,但因其为耽美题材,设定问题可能为后续的争议埋下了伏笔。

直接原因:《下坠》

《下坠》是于2020年2月24日在AO3网站发布的一篇同人文章。文中,肖战被设定为有“性别不安(ICD-10)”的发廊妹,王一博(同样出演《陈情令》)被设定为爱上发廊妹的未成年高中生。

上述可能不利于肖战的“形象”,遭到了部分肖战粉丝的强烈抵制。

后续

AO3被上述粉丝举报(Lofter也受到波及),而写手、CP粉认为“举报”不应该是粉丝们聚集在一起对自己不喜欢的内容进行抵制的手段,就此出现争端。

但上述粉丝(下文称为举报派)继续举报且加大力度,引发更多粉丝加入;另一边(下文称为创作自由派),也有更多同人社区和网站的读者加入。

2020年2月27日,原本双方的战争扩大化,举报派的过激言辞以及“举报行动”激起了诸多路人的不满,更多圈子的粉丝加入创作自由派。

至此,双方差距逐渐拉开(特指人数)。一时间,全网都在捍卫“创作自由”以及“观看自由”。

2020年2月28日,肖战代言的品牌在线上宣传,创作自由派在直播间发表“抵制肖战”的言论,旨在让肖战在品牌方面前失去口碑。这一做法又激怒了举报派。

2020年2月29日,AO3被神秘的力量封禁,标志着这场战争的无法挽回。

2020年3月1日,
肖战工作室

简述网安备案经历

背景资料

什么是网安备案:

依据《计算机信息网络国际联网安全保护管理办法》第十二条的规定,各网站在工信部备案成功之后,需在网站开通之日起30日内到公司实际经营地或个人现居住地公安机关履行公安备案手续。
根据《计算机信息网络国际联网安全保护管理办法》(公安部令第33号)的 第二十三条规定
违反本办法第十一条、第十二条规定,不履行备案职责的,由公安机关给予警告或者停机整顿不超过六个月的处罚。

为了保证网站开通的合规性,本站于2020年8月5日提交网安备案申请。


网上提交

  1. 前往全国互联网安全管理服务平台
  2. 点击联网备案登录loginbtn
  3. 点击注册registerbtn
  4. 填入正确的注册信息;registercontent
  5. 登录后在开办主体管理处补全自己的个人信息;maincontent
  6. 点击新办网站申请,按要求填入网站的信息;websiteapply
  7. 收到资料审核通过短信后于指定时间进行当面核验(或直接备案通过)。notice

Tips:

  • 注册信息和开办主体请务必使用真实信息,否则主体审核不会通过;
  • 主体审核时也可以先提交网站备案申请;
  • 管理能力或时间不足的站长尽量关闭本站评论、论坛等交互式模块,否则处理不及时需要承担监管不力责任;
  • 如果你认为交互式模块很重要,不建议图一时方便,临时性地关闭模块以非交互式名义进行备案,否则备案可能会被吊销。

当面核验

网上盛传的一种说法是非交互式网站不需要当面核验,这其实是不准确的。当地网安大队会根据具体情况决定是否需要当面核验。
所以去当面核验也不用太紧张,一般都是检查一下网站的内容,确认你是否有监管能力。

未成年人,特别是平时没有监管能力的未成年人,请与监护人携带身份证一同前往。

这里要提一下对日志保存的要求,《责任书》是要求网站日志应当保存六个月以上。这个日志可能包括两部分:特定情况的报错日志和日常的访问日志。 Linux系统中/var/log/目录中的日志默认保存四周并不生成系统日志(syslog.log),所以如果你想合格地监管网站,需要手动修改logrotate配置文件:

  1. 可以配置/etc/syslog.conf生成系统日志文件。与messages文件不同的是,它只记录警告信息,所以更应该关注该文件。要让系统生成该日志文件,在/etc/syslog.conf文件中加上

    *.warning /var/log/syslog

  2. 修改系统日志文件保存的时间,需要修改/etc/logrotate.conf中的

rotate 4

rotate 35

# no packages own wtmp -- we'll rotate it here
/var/log/wtmp {
    missingok
    monthly
    create 0664 root utmp
    minsize 1M
    rotate 1
}

中的1改为6,保存后通过service syslog restart命令重启syslog进程即可。

  1. 其他Web服务器的修改原理相似,只作举例:

/data/wwwlogs/*nginx.log {
  daily
  rotate 48
  missingok
  dateext
  compress
  notifempty
  sharedscripts
  postrotate
    [ -e /var/run/nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid`
  endscript
}
/data/wwwlogs/*apache.log {
  daily
  rotate 48
  missingok
  dateext
  compress
  notifempty
  sharedscripts
  postrotate
    [ -e /var/run/httpd.pid ] && kill -USR1 `cat /var/run/httpd.pid`
  endscript
}

Tips: 如果您使用了CDN,通常情况下访问日志由您的服务提供商保存。upyun_log

【第三期】学海对拳——2020.7.25周论文精选

No 1. 《The Computational Limits of Deep Learning》
No 2. 《Learning from Noisy Labels with Deep Neural Networks: A Survey》
No 3. 《Ideas for Improving the Field of Machine Learning: Summarizing Discussion from the NeurIPS 2019 Retrospectives Workshop》
No 4. *《Monte-Carlo Tree Search as Regularized Policy Optimization》
No 5. 《Towards Deeper Graph Neural Networks》
No 6. 《Xiaomingbot: A Multilingual Robot News Reporter》
No 7. *《Unsupervised Shape and Pose Disentanglement for 3D Meshes》
No 8. *《CheXphoto: 10,000+ Smartphone Photos and Synthetic Photographic Transformations of Chest X-rays for Benchmarking Deep Learning Robustness》
No 9. 《Active Learning under Label Shift》
No 10. 《Few-Shot Object Detection and Viewpoint Estimation for Objects in the Wild》
No 11. 《Generating Person Images with Appearance-aware Pose Stylizer》
No 12. *《Deep Learning in Protein Structural Modeling and Design》
No 13. 《Visualizing Deep Graph Generative Models for Drug Discovery》
No 14. *《Whole-Body Human Pose Estimation in the Wild》
No 15. 《Shape and Viewpoint without Keypoints》
No 16. 《ProteiNN: Intrinsic-Extrinsic Convolution and Pooling for Scalable Deep Protein Analysis》
No 17. *《Contact and Human Dynamics from Monocular Video》
No 18. 《Generative Hierarchical Features from Synthesizing Images》
No 19. *《Do Adversarially Robust ImageNet Models Transfer Better?》
No 20. 《Ideas for Improving the Field of Machine Learning: Summarizing Discussion from the NeurIPS 2019 Retrospectives Workshop》
No 21. 《D2D: Learning to find good correspondences for image matching and manipulation》
No 22. *《CrossTransformers: spatially-aware few-shot transfer》
No 23. *《A Unifying Perspective on Neighbor Embeddings along the Attraction-Repulsion Spectrum》
No 24. 《TSIT: A Simple and Versatile Framework for Image-to-Image Translation》
No 25. 《RetrieveGAN: Image Synthesis via Differentiable Patch Retrieval》
No 26. 《SketchGraphs: A Large-Scale Dataset for Modeling Relational Geometry in Computer-Aided Design》
No 27. 《Points2Surf: Learning Implicit Surfaces from Point Cloud Patches》
No 28. *《Accelerating 3D Deep Learning with PyTorch3D》
No 29. 《Path Signatures on Lie Groups》
No 30. 《Layer-Parallel Training with GPU Concurrency of Deep Residual Neural Networks Via Nonlinear Multigrid》

PHP8挖坑记

最后更新于2021-01-03

灵感来源

本站从Vultr(CHOOPA-Tokyo)迁移到阿里云(深圳)后,重新部署了Linux+Nginx+Mysql+PHP+Apache版本,优化了套件的安全性。恰逢PHP8发布Beta版本,且加入了JIT(Just In Time),遂尝试性进行更新。

P.S. PHP8.0正式版发布后已跟进。

在PHP8正式发布后,本文会更新基准测试 etc.


什么是JIT

在计算机技术中,即时编译(英语:just-in-time compilation,缩写为JIT;又译及时编译、实时编译),也称为动态翻译或运行时编译,是一种执行计算机代码的方法,这种方法涉及在程序执行过程中(在运行期)而不是在执行之前进行编译。通常,这包括源代码或更常见的字节码到机器码的转换,然后直接执行。实现JIT编译器的系统通常会不断地分析正在执行的代码,并确定代码的某些部分,在这些部分中,编译或重新编译所获得的加速将超过编译该代码的开销。

JIT编译是两种传统的机器代码翻译方法——提前编译(英语:ahead-of-time compilation)(AOT)和解释——的结合,它结合了两者的优点和缺点。大致来说,JIT编译将编译代码的速度与解释的灵活性、解释器的开销以及额外的编译开销(而不仅仅是解释)结合起来。JIT编译是动态编译的一种形式,允许自适应优化(英语:adaptive optimization),比如动态重编译和特定于微架构的加速——因此,在理论上,JIT编译能够比静态编译产生更快的执行速度。解释和JIT编译特别适合于动态编程语言,因为运行时系统可以处理后期绑定(英语:Late binding)的数据类型并实施安全保证。

PHP8中JIT的支持是Opcache的一部分,近年来PHP在核心数据结构HashTableZend VM中某些操作码与Opcache的Optimizer组件下了不少功夫。JIT的加入可能意味着其他方法优化已经到达极限了

转自:Wikipedia


安装方法

下载php-8.0.0.tar.gz - php.net代码(截止发文最新的Release版本)。
代码如下(依赖请自行解决)

wget https://www.php.net/distributions/php-8.0.0.tar.gz
tar zxvf https://www.php.net/distributions/php-8.0.0.tar.gz && cd php-8.0.0
./buildconf
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/etc/php.d --with-fpm-user=www --with-fpm-group=www --enable-fpm --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir=/usr/local/libiconv --with-freetype --with-jpeg --with-zlib --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-exif --enable-sysvsem --enable-inline-optimization --with-curl=/usr/local/curl --enable-mbregex --enable-mbstring --with-password-argon2 --with-sodium=/usr/local --enable-gd --with-openssl=/usr/local/openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-ftp --enable-intl --with-xsl --with-gettext --with-zip=/usr/local --enable-soap --disable-debug --enable-opcache --enable-calendar
make && make install

cp php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
service php-fpm start
systemctl enable php-fpm

Opcache使用配置

cd /usr/local/php/etc/php.d
vim 02-opcache.ini

写入以下内容:

[opcache]
zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=192
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=100000
opcache.max_wasted_percentage=5
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.revalidate_freq=60
;opcache.save_comments=0
opcache.fast_shutdown=1
opcache.consistency_checks=0
;opcache.optimization_level=0
opcache.jit_buffer_size=128m
opcache.jit=1205

后重启php-fpm

service php-fpm restart

常见问题

  1. PHP7.4与PHP8共存未解决(指定的--with-config-file-scan-dir不生效)(是否解决未知)
  2. configure: error: iconv does not support errno
    解决方案相当玄学,1.16报错可以尝试1.14版本:
    wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
    ./configure --prefix=/usr/local/libiconv
    make && make install
  3. 目前和PHP7最常见的兼容性问题就是PHP8.0报错500,因为PHP8禁用@运算符强制屏蔽致命性错误,请修改相关代码。目前测试Typecho支持良好,OneIndexR Core问题已修复。

基准测试

基准测试可以参考Phoronix的

【第二期】学海对拳——2020.7.18周论文精选

No 1. 《Closed-Form Factorization of Latent Semantics in GANs》
No 2. *《Graph Structure of Neural Networks》
No 3. 《Deep Retrieval: An End-to-End Learnable Structure Model for Large-Scale Recommendations》
No 4. 效果不错的像素图矢量化
No 5. 《Xiaomingbot: A Multilingual Robot News Reporter》
No 6. 《Learning Semantics-enriched Representation via Self-discovery, Self-classification, and Self-restoration》
No 7. 《Visualizing Transfer Learning》
No 8. 对比代码表示学习(ContraCode)
No 9. 《SegFix: Model-Agnostic Boundary Refinement for Segmentation》
No 10. 《Explainable Deep One-Class Classification》
No 11. 《Sudo rm -rf: Efficient Networks for Universal Audio Source Separation》
No 12. 《Contrastive Training for Improved Out-of-Distribution Detection》
No 13. 《Graph Neural Network Based Coarse-Grained Mapping Prediction》
No 14. 《The Computational Limits of Deep Learning》
No 15. 《A Single Stream Network for Robust and Real-time RGB-D Salient Object Detection》
No 16. 《Video Object Segmentation with Episodic Graph Memory Networks》
No 17. 《Deep Reinforcement Learning and its Neuroscientific Implications》
No 18. 《Rethinking Image Inpainting via a Mutual Encoder-Decoder with Feature Equalizations》
No 19. *《Meta-Learning Requires Meta-Augmentation》
No 20. 《Multi-Task Reinforcement Learning as a Hidden-Parameter Block MDP》
No 21. 《Deep Placental Vessel Segmentation for Fetoscopic Mosaicking》
No 22. 《Causal Inference using Gaussian Processes with Structured Latent Confounders》
No 23. 《A Survey of Privacy Attacks in Machine Learning》
No 24. 《D2D: Learning to find good correspondences for image matching and manipulation》
No 25. 《Uncertainty-Aware Lookahead Factor Models for Quantitative Investing》
No 26. 《Transfer Learning for Brain-Computer Interfaces: A Complete Pipeline》
No 27. 《RetrieveGAN: Image Synthesis via Differentiable Patch Retrieval》
No 28. 《ThreeDWorld: A Platform for Interactive Multi-Modal Physical Simulation》
No 29. 《All in the Exponential Family: Bregman Duality in Thermodynamic Variational Inference》
No 30. 《Attack of the Tails: Yes, You Really Can Backdoor Federated Learning》