SEARCH KEYWORD -- Good code
How Kafka achieves high throughput low latency
Kafka is a message streaming system with high throughput and low latency. It is widely adopted in lots of big companies. A well configured Kafka cluster can achieve super high throughput with millions of concurrent writes. How Kafka can achieve this? This post will try to explain some technologies used by Kafka. Page cache + Disk sequential write Every time when Kafka receives a record, it will write it to disk file eventually. But if it writes to disk every time it receives a record, it would ...
Java Concurrency Basics: CountDownLatch and CyclicBarrier
CountDownLatch CountDownLatch can be used in synchronizing behavior among threads, it makes one or more threads wait for some actions in other threads to be completed. It has a property count which defines how many countDown() need to be called before other threads which called await() to be waked up. When a thread calls CountDownLatch.await(), the thread will be blocked until the value of count becomes 0. The initial value of count can be specified when creating the CountDownLatch instanc...
JAVA,JAVA CONCURRENCY,COUNTDOWNLATCH,CYCLICBARRIER 2018-03-25 07:02:40
The Power of Efficiency: 10 Practical Energy-Saving Tips for Tech Startups
In today's fast-paced world, where technology reigns supreme, energy consumption is a significant concern for tech startups. Not only does excessive energy usage contribute to environmental degradation, but it also adds up to substantial operational costs. However, the good news is that there are plenty of practical steps that tech companies can take to reduce their energy footprint without compromising productivity or innovation. In this guide, we'll explore ten actionable tips that can help te...
STARTUP,ENERGY,ENVIRONMENT,RENEWABLE ENERGY 2024-03-03 03:07:04
Remove browse button from input type=file
In Web 2.0 era, many websites will ask the user to upload their avatar when creating their profile. In HTML, the input control we should use is input="file". This is a file control provided by the browser vendor and it should be ran in a sandbox for security consideration. Browsers don't provide ways to choose file from local and upload to the remote server without the input="file" control. There is one annoying part about the input="file", which is a default button named "Choose File" or...
file,html,browse,remove browse button 2015-07-12 05:17:51
Select top 3 values from each group in a table with SQL
Yesterday, my friend Liu Bing asked me a question about how to select top 3 values for each person in a database table using SQL. I think this question is interesting and it deserves some thoughts. Here I record down how to solve this issue. Assume we have a table which has two columns, one column contains the names of some people and the other column contains some values related to each person. One person can have more than one value. Each value has a numeric type. The question is we want to se...
SQL,Correlated query,top 3 2013-05-23 03:21:25
Some famous article aggregators
Blogs are still very important places for people sharing their thoughts about something although some social media platforms have replaced some of these capabilities. As a blog writer, how can you let others know what you are thinking about? Besides your friends and social media platforms, there are some article aggregators around us which can help us promote our articles. Other than some aggregators like Google News, readers can submit articles to these sites themselves What are some famous art...
News aggregator,Reddit,Digg,Hacker News 2013-08-12 03:34:37
Python PLC Honeypot Project
Program Design Propose : This project aims to develop a sophisticated honeypot system that emulates an OT (Operational Technology) SCADA network environment, bridging Level 1 OT field controller devices (PLCs) with Level 2 control programs, including Human-Machine Interfaces (HMIs). This honeypot will simulate various PLC models from major vendors, such as Schneider and Siemens, while supporting the primary communication protocols Modbus-TCP and Siemens-S7Comm. The system will integrate essenti...
Use of @font-face
Almost all web browsers(including the dinosaur browser IE6) support the web font property @font-face. Its usage is: @font-face { font-family: 'MyWebFont'; src: url('webfont.eot'); /* IE9 Compat Modes */ src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('webfont.woff') format('woff'), /* Modern Browsers */ url('webfont.ttf') format('truetype'), /* Safari, Android, iOS */ url('webfont.svg#svgFontName') format('svg'); /* Legacy iOS */ } Now we...
CSS,@font-face 2014-06-08 07:17:34
Convert number to string in C++
Prior to C++11, there is no built-in function in C++ standard library which can be used to convert numbers such as interger and double number to string. There are many ways which can convert number to string. Since C++ is C compatible, we can use itoa() function to convert an integer to C style string. But this one can only convert integer to string, not double. For different types of numbers, we need to use different functions. string s = string(itoa(a)); Actually, we can also use strings...
C++,conversion,number,string 2012-08-14 15:52:48
IT System Cyber Attack Case Study 01: Malicious Macro and Backdoor Trojan Attack on IT-Network
Project Design Purpose: The objective of this cyber attack case study is to develop a workshop showcasing a practical demonstration of a red team attacker implementing an IT system/network attack via a Malicious Macro MS-Office-Word file (CVE-2015-1641) and phishing email generation program to penetrate multiple layers of firewall defenses and implant a backdoor trojan into the railway system's OT network. Related Links: GitHub Project Link , LinkedIn Post Link Attacker Vector: Malicious Macro ...
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>>