Google plans to bring a full version of Chrome to Fuchsia OS

Whether it’s desktop, mobile or a smart home device with a screen, every operating system needs a web browser, and while Fuchsia OS already uses some of Chromium’s code, Google is preparing to bring Chrome and all its features to Fuchsia OS. As mentioned above, Fuchsia OS currently already includes a Chromium-based browser, but for now it’s very small and has few additional features and only simple web browsing. Despite the support of the Chromium project, there has been no indication that Chrome will make its way to Fuchsia OS.

Intel provides extensive graphics driver optimizations for Linux 5.15

On Friday, Intel engineers committed a large amount of code on the DRM-Next branch of the Linux kernel, mainly on the kernel graphics driver, with the following highlights. Extensive code refactoring to increase the use of TTM dispensers and prepare for the DRM scheduler. Cleaned up uAPI and dropped faster GPU relocation paths on older platforms, instead mitigating performance issues by updating to the latest UMD version. Initially implemented code for ADL-P/XeHP and DG2 platforms, fixed ADL-S and removed CNL code.

About Redisson Lock

I wrote an article about the red lock implementation in Redis a long, long time ago, but in a production environment, the distributed lock component used in my projects has always been Redisson, a Java-based Redis client framework written with features of In-Memory Data Grid Redisson is a Java-based Redis client framework (Redis Java Client) with features of In-Memory Data Grid, which extends the basic data types of Redis with

Node Event Loop

JavaScript is single-threaded and asynchronous operations are particularly important. Whenever you use functions outside the engine, you need to interact with the outside world, thus creating asynchronous operations. Because there are so many asynchronous operations, JavaScript has to provide a lot of asynchronous syntax. It’s like, some people get hit all the time, and they have to become very resilient, or they’re screwed. Node’s asynchronous syntax is more complex than the browser’s, because it talks to the kernel and has to make a special library, libuv, to do this.

Microsoft to disable JavaScript JIT to improve Edge security

Microsoft Edge vulnerability research lead Johnathan Norman revealed that the team is experimenting with a new feature in Edge that disables the JavaScript JIT compiler to enable some additional security protection. They also gave the experiment an interesting and slightly provocative name, “Super Duper Secure Mode (SDSM)”. According to Norman, JIT compilation is a “very complex process that few people understand, with very small errors. But while JIT improves browser performance, it also introduces vulnerabilities, and “performance and complexity usually come at a cost, which we usually bear in the form of security vulnerabilities and subsequent patches.

Sophos acquires Refactr to advance DevSecOps

Sophos revealed this week that it has acquired Refactr, a provider of an automation platform that makes it easier to add static and dynamic security scanning and application testing to the DevOps pipeline. Sophos will extend the Refactr DevSecOps automation platform to add security orchestration automation and response (SOAR) capabilities, said Joe Levy, chief technology officer at Sophos. Levy said the goal is to make it easier for DevOps and cybersecurity teams to collaborate when these integrations are implemented in early 2022.

Why is the HTML <picture> element so rarely used?

The HTML <picture> element has been around for many years (it appeared in 2014), but it is rarely used, why? I have summarized the following 3 reasons. no one knows about it cumbersome to use it can be replaced This element is obviously very practical The HTML <picture> element is useful, and is often used in conjunction with the <source> element (which can be multiple) and the <img> element (which

Cracking ReCaptcha with YesCaptcha

Maybe you haven’t heard of what ReCAPTCHA is, probably for some reason this CAPTCHA doesn’t appear much in China, but I think you should have seen or used it more or less. It looks like this. At this point, as soon as we click the checkbox at the top, the CAPTCHA algorithm will first use its “risk analysis engine” to do a security check, and if it passes the test

GoReplay Manual

1. Installation GoReplay is written in Go and has a single executable file, which can be downloaded from the official Release page and placed in the PATH directory. 1 2 3 wget https://github.com/buger/goreplay/releases/download/v1.2.0/gor_v1.2.0_x64.tar.gz tar -zxvf gor_v1.2.0_x64.tar.gz mv gor /usr/local/bin 2. Basic Use The overall use of the GoReplay command line is to specify the input and input side, and then GoReplay copies the traffic from the input side to the output side.

Introduction to Apache Parquet column-oriented Storage Format

Apache Parquet is a columnar storage format that can be used by any project in the Hadoop ecosystem.Parquet is language- and platform-agnostic.Parquet was originally developed and open-sourced in collaboration with Twitter and Cloudera, and graduated from Apache’s incubator as an Apache top-level project in May 2015 . In the Spark project, Parquet is also its default data source. The default data source configuration can be modified via spark.sql.sources.default. What is column-oriented Storage Format In a relational database, the practical use of columnar storage is little different from row storage.

Use Git Hook to Restrict Commit Emails

Here’s the thing. Recently, the group created a new code repository to develop a new product, and since it’s raining hard in Beijing today, many of my colleagues chose to work from home (including me), so I chose to use my own PC to work. But I used my own personal email address for the Git information on my PC. 1 2 git config --global user.name "Germey" git config --global user.

Slice Principle Analysis

As a Go novice, I’m curious to see any “weird” code; for example, I recently saw a few methods; the pseudo-code is as follows. 1 2 3 4 5 6 7 8 func FindA() ([]*T,error) { } func FindB() ([]T,error) { } func SaveA(data *[]T) error { } func SaveB(data *[]*T) error { } I believe that most newcomers to Go are confused when they see this code, the most confusing of which is

K0s Introduction

I’ve been using kubeadm to deploy kubernetes clusters for the last two years, and it’s generally convenient to work with some of my own small scripts and some automation tools; however, I’m really worried about the stability of full containerization, and I’ve encountered inexplicable certificate expiration errors, and finally rebooted to solve such problems; so I’m also exploring more convenient binary deployment methods, such as this k0s. 1. k0s Introduction

JavaScript's this Principle

1. Origin of the problem One sign of understanding the JavaScript language is to understand the following two ways of writing, which may have different results. 1 2 3 4 5 6 7 8 9 10 11 12 var obj = { foo: function () {} }; var foo = obj.foo; // Writing Method I obj.foo() // Writing Method 2 foo() In the above code, although obj.foo and foo point to the same function, the execution result may be different.

Interaction Between Pages - window.postMessage and BroadcastChannel Api

In multi-page web applications, you will encounter scenarios of inter-page interaction, such as: passing data from navigation pages to iFrame pages, notifying events between tab pages, and so on. This article introduces two common interfaces for inter-page interaction - window.postMessage and BroadcastChannel API - and compares the differences between them. Messaging Direction window.postMessage An example of a window.postMessage call is as follows. 1 2 3 // A Page const B = window.

Why I Migrated From Redux to Mobx

Redux is a data management layer that is widely used to manage data for complex applications. But in practice, Redux is poorly used, and arguably not well used. And at the same time, a number of data management solutions have emerged in the community, Mobx being one of them. Problems with Redux Predictable state container for JavaScript apps This is the position Redux has given itself, but there are many problems with it.

Common Ways to Implement Animations in React

Nowadays, users’ requirements for front-end pages are no longer satisfied with achieving functionality, but also with value and fun. In addition to the overall UI aesthetics, adding the right animation effect in the right place is often more expressive and natural than static pages. For example, a simple loading animation or page switching effect can not only relieve the user’s waiting emotion, but even silently achieve the effect of brand

Simple Usage of Colly

colly is a powerful crawler framework written in Go language . It provides a simple API, has strong performance, can automatically handle cookies & sessions, and provides a flexible extension mechanism. First, we introduce the basic concept of colly. Then we introduce the usage and features of colly with a few examples: pulling GitHub Treading, pulling Baidu novel hotlist, downloading images from Unsplash . Quick Use Create the directory and

Manual for structopt library

The standard library provides std::env::args() to get command line arguments, the first value is the name of the program, similar to the way arguments are obtained in other languages: 1 2 3 4 5 let args: Vec<String> = env::args().collect(); let query = &args[1]; let filename = &args[2]; println!("Searching for {}", query); println!("In file {}", filename); But in the process of product development, we need more program parameters, and need certain rules and checks, this time we need to use some other libraries to parse these parameters, such as the structopt library.

Browser Database IndexedDB Getting Started Tutorial

1. Overview With the increasing functionality of browsers, more and more websites are considering storing large amounts of data on the client side so that they can get less data from the server and get it directly from the local area. The existing browser data storage solutions are not suitable for storing large amounts of data: Cookie size is no more than 4KB and each request is sent back to