SEARCH KEYWORD -- Must read
OpenLDAP Proxy -- rwm-map vs map
OpenLDAP proxy is used to proxy ldap request and response between clients and servers, different servers may have different representations/attributes to mean the same thing. For example, in one LDAP server, the firstName may be represented by firstName, it may be represented by givenName in a different server. However, from the client perspective, it only wants to get the firstName, it doesn't care about the backend attributes. In this case, attribute mapping can help provide a virtual view of ...
MAP,OPENLDAP,OPENLDAP PROXY,LDAP,RWM-MAP 2018-02-02 20:36:02
Why is single threaded Redis so fast
Redis is a high-performance, in-memory key-value database. According to official test reports, it can support around 100,000 QPS (queries per second) on a single machine. However, Redis uses a single-threaded architecture in its design. Why does Redis still have such high performance with a single-threaded design? Wouldn't it be better to use multiple threads for concurrent request processing? In this article, let's explore why Redis has a single-threaded architecture and still maintains its spe...
REDIS,SINGLE-THREADED,MULTI-THREADING 2023-02-28 05:16:22
Fix for-range Issue Again in Go 1.22
With the release of Go 1.22, the Go team addressed a long-standing issue with the for-range loop variable scoping, which had been a common pitfall for developers writing concurrent code. Specifically, the problem was that the loop variable in a for-range loop was reused across iterations, leading to unexpected behavior when closures were involved. The Issue Before Go 1.22 Consider the following example: package forange import "fmt" func Do() { done := make(chan bool) values := []string...
Arrays.equals() vs MessageDigest.isEqual()
Both Arrays.equals() and MessageDigest.isEqual() are used to compare the equality of two arrays. They can be interchangeably in many cases. However, they do have some differences which lead to different use cases in real applications. One difference is that the arrays passed to MessageDigest.isEqual() cannot be null while it's ok for Arrays.equals(). The one major difference between these two methods is that Arrays.equals() is not time-constant while MessageDigest.isEqual() is time-constant. Thi...
Arrays.equal(),MessageDigest.isEqual(),Java,Security 2015-05-14 22:03:29
How Query Optimizer Works in RDBMS
In a previous post, we discussed how the various relational operators are implemented in relational database systems. If you have read that post, you probably still remember that there are a few alternative implementations for every operator. Thus, how should RDBMS determine which algorithm (or implementation) to use? Obviously, to optimize the performance for any query, RDBMS has to select the correct the algorithm based on the query. It would not be desirable to always use the same algori...
DATABASE,DATABASE DESIGN,DATABASE OPTIMIZATION 2019-04-20 07:26:32
How to play with cross domain request
What is cross domain request In simple, cross domain request is to request resource from other domain in one domain. Note, the "other domain" doesn't just mean domain name only, it includes much more. If the protocol, domain name, port is not the same, two domains will be considered different. Below example describes what is considered as different domain. http://www.a.com/a.jshttp://www.a.com/b.js # Same domainhttp://www.a.com/lab/a.js &nb...
FRONT END,JSONP,CROSS DOMAIN,CROSS ORIGIN,CORS,DOCUMENT.DOMAIN,WINDOW.NAME 2016-11-06 00:48:54
Google launches Google Keep
According to Tencent Tech, Google announced the launch of Google Keep on Wednesday This is a note application similar to Evernote, its philosophy is to help you save everything you want to remember, including text and images and other notes, they can be instantly synchronized among different devices so that users can get the information they want at any time. This is a free service, it provides support for Web and Android 4.0 or later devices, users can navigate to Drive.Google.com/Keep or downl...
Google Keep,Evernote,Synchronization 2013-03-21 13:00:02
JavaScript to scroll element into view
In AJAX applications, there are frequent needs to scroll some element into view after some modification to the page. For example, after adding an item or updating an element in an admin panel, the page may need to be scrolled to the item added or updated so that we can see the changes immediately. In these cases, JavaScript can be used to scroll the element we want to show. In Vanilla JavaScript, there is no built-in function which can achieve scroll_element_into_view(), but most of modern brows...
JAVASCRIPT,JQUERY,SCROLLTO,HOW-TO 2015-12-17 03:47:32
Different types of keystore in Java -- DKS
Domain KeyStore(DKS) is a keystore of keystore. It abstracts a collection of keystores that are presented as a single logical keystore. Itself is actually not a keystore. This new keystore type is introduced in Java 8. There is a new class DomainLoadStoreParameter which closely relates to DKS. To load different keystores into the single logical keystore, some configuration is needed. Here is the format of the configuration for grouping different keystores. domain [ ...] { keystore [ ....
Beauty of code : How to write graceful PHP code
Writing good code is an art. In order to achieve this, it is necessary to develop good programming habits at the beginning. Good programming habits not only contributes to the early project design (modular),but also allows you to the code easier to understand, so that the maintenance of the code is easier. Bad programming habits will result in more code bugs, and will make future maintenance work difficult. We introduce some good programming habits taking PHP as example. Hope this will help you....
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>