SEARCH KEYWORD -- Exception



  String.length() vs String.getBytes().length in Java

In Java, String.length() is to return the number of characters in the string, while String.getBytes().length is to return the number of bytes to represent the string with the specified encoding. By default, the encoding will be the value of system property file.encoding, the encoding name can be set manually as well by calling System.setProperty("file.encoding", "XXX"). For example, UTF-8, Cp1252. In many cases, String.length() will return the same value as String.getBytes().length, but in some ...

   Java,UTF8,String,Encoding,Sample     2015-04-01 22:22:23

  Use Java ThreadLocal with caution

According to Oracle documentation, ThreadLocal is a class provides thread-local variables. These variables differ from their normal counterparts in that each thread that accesses one (via its get or set method) has its own, independently initialized copy of the variable. ThreadLocal instances are typically private static fields in classes that wish to associate state with a thread. In short, ThreadLocal variables are variables belong to a thread, not a class or an instance of a class. One common...

   JAVA,MEMORY LEAK, THREADLOCAL     2015-11-03 07:31:57

  OT Power Grid System Development

Use PLC to Remote Control Circuit Breaker in Power Grid System Figure-00: Project Overview Diagram, version v0.0.2 (2024) Project Design Purpose: The objective of this project is to demonstrate how to utilize Programmable Logic Controllers (PLC) to remotely monitor and control circuit breakers within a power (grid/supply) system. Using a Schneider Electric circuit breaker, sensor, closer and PLC, the project will cover the physical hardware connections and provide a step-by-step guide for desig...

       2024-09-21 08:56:05

  A plugin to update last_error in Delayed Job

delayed_job is a process based asynchronous task processing gem which can be ran at background. It will fork the specified number of processes to execute the tasks asynchronously. The task status is usually stored in the database so that it can be easily integrated into a Rails application where asynchronous job execution is desired. Normally when a job fails to execute or error occurs, it would save the error into the database with the column last_error. Ideally all these will be handled b...

   RUBY,RUBY ON RAILS,DELAYED JOB,LAST_ERROR     2017-11-18 13:05:49

  What is Hystrix and How does Hystrix work

Background In distributed systems, there is one effect where the unavailability of one service or some services will lead to the service unavailability of the whole system, this is called service avalanche effect. A common way to prevent service avalanche is do manual service fallback, in fact Hystrix also provides another option beside this. Definition of Service Avalanche Effect Service avalanche effect is a kind of effect where the service provider fails to provide service which causes t...

   AVALANCHE EFFECT,HYSTRIX,DISTRIBUTED SYSTEM     2019-02-04 06:00:38

  How AI is Changing Web Development: A New Era of Digital Innovation

Picture this: AI isn't just about robots and sci-fi movies anymore. It's shaking things up in the tech industry, especially web development. So, what's the deal with AI and web development? Let's break it down. In a nutshell, AI refers to machines performing tasks that typically require human intelligence. When we talk about AI in web development, we're talking about smart algorithms and systems that can make websites smarter, faster, and more user-friendly.  Why should you care about this?...

   AI,WEB DEVELOPMENT     2024-10-21 07:34:22

  Code coverage rate

When doing unit testing, the code coverage rate is often used as the criteria for measuring testing performance, even in some cases code coverage may be used to consider whether the testing task is completed or not. So testers need to spend much time on designing test cases which can cover as many codes as possible. There are advantages and disadvantages about using code coverage rate. First let's check what is code coverage rate: code coverage rate= the degree of code coverage in testing. There...

   Unit testing,Code coverage     2013-04-16 12:50:57

  9 Ways to Create Thread Pools with Java Executors

In Java, the Executors class provides a variety of static factory methods to create different types of thread pools. When learning about thread pools, the Executors class is indispensable. Mastering its usage, principles, and scenarios will enable you to apply it smoothly in actual project development. Here are some commonly used methods, which I will explain one by one: newCachedThreadPool(): Creates a cached thread pool. If a thread has not been used for 60 seconds, it will be terminated and ...

   TUTORIAL,JAVA THREAD     2024-07-19 23:07:09

  Simplify Cloud Data Security: A Deep Dive Into Protecting Sensitive Data in Java

Featuring encryption, anonymization, hashing, and access control Network security incidents occur now and then, mostly caused by data leakage. Data security has aroused widespread concern, and the community keeps working hard on approaches to simplify data security, especially in sensitive data protection. Sensitive data includes but is not limited to personally identifiable information (PII) like names, ID numbers, passport numbers, driver’s license numbers, contact information like addre...

   JAVA,SECURITY,ENCRYPTION,DECRYPTION,TOKENIZATION     2023-04-28 21:22:10

  Python and PLC Communication

This article provides detailed steps on how to use Python to communicate with Schneider M221 and Siemens S7-1200 PLCs via Ethernet. Additionally, we offer a packaged Python PLC client library, enabling you to easily build your own SCADA control programs, such as Human-Machine Interfaces (HMI). The system overview is shown below: To check the project detail please refer to Python Physical PLC Communication Clients # Created: 2024/06/29 # Version: v0.1.3 # Copyright: Copyright (c) 2024 ...

   PYTHON,PLC,COMMUNICATION     2024-06-30 02:21:17