SEARCH KEYWORD -- PACKAGE LOCATION
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 ...
Go channel explained
In Go, a channel is a type of concurrent data structure that allows two or more goroutines (Go's term for lightweight threads) to communicate with each other. Channels provide a way for goroutines to send and receive values, and they are an essential part of Go's concurrency model. Here's a simple example that demonstrates how to use channels in Go: package main import ( "fmt" ) func main() { // Create a new channel with the `make` function ch := make(chan int) // Start a new ...
A simple tutorial on GoLang connecting to Clickhouse
Go, also known as Golang, is a statically-typed, concurrent programming language created by Google. ClickHouse is a high-performance, column-oriented database management system that can be used for real-time data analysis. This tutorial will provide a deep dive into how to connect to ClickHouse from a Go program, including how to perform common database operations such as SELECT and INSERT statements. Before proceeding, it is assumed that you already have Go and ClickHouse installed on your mach...
GOLANG,CLICKHOUSE,TUTORIAL 2023-02-11 07:05:36
HeartBleed: Should C be blamed for the HeartBleed bug?
There is a discussion about the security of applications written in C on Hacker News recently after the report of HeartBleed bug in OpenSSL. In this discussion, some people are saying that the applications written in C are unsafe. It seems all or most of the faults should be laid on C. I think this is biased. The language itself should not be blamed.Safety is a relative term for programming languages. No language is absolutely safe. We claim some languages like Java and C# are safer than C/C++ b...
C,HeartBleed,Analysis,Code review 2014-04-14 03:52:55
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...
The tic-tac-toe game with Python
In this tutorial, we will show how to build a tic-tac-toe game with Python. We will use functions,arrays,if statements,while statements, for loops and error handling etc. First, we need to create two functions, the first function will display the borad of the game: def print_board(): for i in range(0,3): for j in range(0,3): print map[2-i][j], if j != 2: print "|", print "" Here we used two for loops to loop through the map, this map is...
Python,Tic-Tac-Toe 2013-07-30 02:49:09
Go Error Best Practice
Being indulged in Go for quite a while and having implemented web-related programs, grpc interfaces and Operators, I seem to be an advanced beginner now. However, I am still a raw hand in production-environmental debugging, which is cumbersome if done by querying logs or error messages. Imagine the scenario that a full-text search is called when the specific location of the error log is missing. Then what happens when those error logs are not only in one place? Yes, my error logs can no longer h...
GO ERROR,ERROR HANDLING 2021-10-07 07:38:28
6 Promising Ways by Which You Can Enhance the App Testing Process
Now mobile application industry is exploding with application demands more than ever. According to the latest mobile app technology news the integration of mobile application service with enterprise business is main cause app developing companies are booming. But with this tremendous demands, competition heats up in market and clients are impatient to get the results. This pressure of a deadline and impatient client, most times becomes a burden to the developing and QA departm...
TECHNOLOGY,MOBILE APP,APP DEVELOPMENT,APP TESTING,MOBILE APP TESTING 2017-04-17 08:02:07
How Online Training Is Revolutionalizing The Corporate Landscape
Everything is transforming to the digital world. Be it a retail store or training of employees, irrespective of the industry, every business, and its aspect is finding its space online. One of the major reasons for this transformation is the ease of accessibility. When you understand you don’t need to be at a certain place to get your training, you will be more interested. This convenience is what drives online training. It is vital to keep conducting training programs for empl...
Bug caused by using changeable value as the default in "python method overload"​
In python we can set the passed in parameter's default value to make the function has the same running feature as the method overload in Java. Define a function like this: def testFunction(self, param1, param2=None, param3=None): Normally we use "None" as the parameter's default value. We can also use str/bool as the default value, but is it OK we use empty list [] as its default value? This is our test program: """ A test program using empty list as the passed-in parameter's default value. ...
PYTHON 2019-03-11 08:52:52
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>>