This is a creation in
Article, where the information may have evolved or changed.
Gosnowflake
Distributed thread-safe UID generator implemented according to Twitter Snowflake algorithm
Feature
Thread-Safe UID generator
Green pluggable, no reliance on redis,mysql, no status
Suitable for distributed systems
Implementing the Twitter Snowflake theory
Description
0 41
Snowflake algorithm
Snowflake is the open-source distributed ID generation algorithm for Twitter, and the result is a long ID. The core idea is: use 41bit as the number of milliseconds, 10bit as the machine ID (5 bit is the data center, 5 bit Machine ID), 12bit as the number of milliseconds (meaning that each node can produce 4,096 IDs per millisecond), and finally a sign bit, is always 0.
I'v
Imagerectangle ($aimg, 0,0, $img _height-1, $img _width-1, $black);//First a black rectangle surrounds the picture
It's time to create a snowflake background, which is actually creating some symbols on the image.
for ($i =1; $i Imagestring ($aimg, 1,mt_rand (1, $img _height), Mt_rand (1, $img _width), "*", Imagecolorallocate ($aimg, Mt_rand (200,255) , Mt_rand (200,255), Mt_rand (200,255));
Ha, see, in fact, is not a
See coding the main interface has snowflakes, originally, wow, really beautiful, a look at the source code, oh a go, angular write, pressure, analysis and analysis analysis ....And then write the JQ plugin look for everyone to use.The online preview page is: http://1.keepu.sinaapp.com/snow/snow.htmlGitHub's code address is: http://sqqihao.github.io/nice-Snowing;The After the angular took off, direct reference to jquery, in fact, do not do jquery also Wow, compatibility did not get wow; The HTM
Package util;/** * Snowflake Algorithm * * @author Zengwei * @email [emailprotected] * @date 2018-03-25 22:02 */public class Idwork Er {private final long workerid; Private final long Snsepoch = 1330328109047L; Private long sequence = 0L; Private final long workeridbits = 10L; Private final Long Maxworkerid = -1l ^ -1l JAVA Snowflake algorithm
The MyBatis plus configuration primary key generation strategy is 2, which is to generate IDs using the Twitter snowflake algorithmThe spring boot is configured as:Globalconfiguration conf = new Globalconfiguration (new Logicsqlinjector ());Conf.setidtype (5);This generates a long type, and if you want to convert the ID to a string type, configure the primary key generation strategy to 5.https://gitee.com/baomidou/mybatis-plus/blob/dev/mybatis-plus-su
required Black
Imagerectangle ($aimg, 0,0, $img _height-1, $img _width-1, $black);//A black rectangle to surround the picture
The following is the creation of a snowflake background, in fact, is to generate some symbols on the picture
For ($i =1 $i Imagestring ($aimg, 1,mt_rand (1, $img _height), Mt_rand (1, $img _width), "*", Imagecolorallocate ($aimg, Mt_rand (200,255) , Mt_rand (200,255), Mt_rand (200,255)));
Ha, see it, in fact, is not a
Koch curve is a geometric curve shaped like a snowflake, so it's called a snowflake curve, which is one of the fractal curves, as follows:1, arbitrarily draw a positive triangle, and put each side three equal;2, take three equal part of the middle section of the side to make a positive triangle, and the "middle section" wiped off;3, repeat the above two steps, draw a smaller triangle.4, repeating until inf
($aimg, 255,255,255); Picture background, imagecolorallocate the 1th time to define color PHP is considered to be the background
$black = Imagecolorallocate ($aimg, 0,0,0); Define the required Black
Imagerectangle ($aimg, 0,0, $img _height-1, $img _width-1, $black);//A black rectangle to surround the picture
The following is the creation of a snowflake background, in fact, is to generate some symbols on the picture
For ($i =1 $i Imagestring ($aimg,
Tutorial Highlights: The animation effect is achieved by adjusting the gradient options.
Before you start the tutorial, first look at the animation effects shown below:
How do you produce this kind of animation that resembles the effect of a TV snowflake? Through filters, Plug-ins? No, FW4 has already prepared this effect for us, please see the following detailed steps:
[note] Before beginning the study in this section, please refer to the previous
image in a black rectangle first
// The following generates a snowflake background. In fact, some symbols are generated on the image.For ($ I = 1; $ I Imagestring ($ aimg, 1, mt_rand (1, $ img_width), mt_rand (1, $ img_height), "*", imageColorAllocate ($ aimg, mt_rand (200,255 ), mt_rand (200,255), mt_rand (200,255 )));// Actually, it is not a snowflake, that is, generating the * number. To make them look
); // srand is not required after PHP420For ($ Tmpa = 0; $ Tmpa $ Nmsg. = dechex (rand (0, 15 ));} // By sports98$ HTTP_SESSION_VARS [login_check_number] = $ nmsg;
// $ HTTP_SESSION_VARS [login_check_number] = strval (mt_rand ("1111", "9999"); // generates a four-digit random number and puts it into the session// Who can make the supplement and generate letters and numbers at the same time ?? ---- Completed by sports98
$ Aimg = imageCreate ($ img_height, $ img_width); // generate an imageImageCo
This algorithm is used to generate Koch fragment (coastline, snowflake) with fast speed and brilliant effects.
// The horizontal angle of the supported initial straight line is a multiple of 60. You can change the starting point and ending point coordinates to generate void Koch (CDC * PDC, int X1, int Y1, int X2, int Y2, int N) {If (n> 0) {Double K = 1.0 * (Y2-Y1)/(x2-X1); int X3 = (x2-X1) /3; int Y3 = (Y2-Y1)/3; Koch (PDC, X1, Y1, X1 + X3, Y1 + Y3,
, $ black); // enclose an image in a black rectangle first// The following generates a snowflake background. In fact, some symbols are generated on the image.For ($ I = 1; $ I ImageString ($ aimg, 1, mt_rand (1, $ img_height), mt_rand (1, $ img_width), "*", imageColorAllocate ($ aimg, mt_rand (200,255 ), mt_rand (200,255), mt_rand (200,255 )));// Ha, you can see it. it's not actually a snowflake, it's just
sessionWho can make the next addition, you can generate letters and numbers at the same time?? ----finished by Sports98.$aimg = Imagecreate ($img _height, $img _width); Create a pictureImagecolorallocate ($aimg, 255,255,255); Image background, imagecolorallocate the 1th time definition of color PHP is considered an undertone.$black = Imagecolorallocate ($aimg, 0,0,0); Define the required BlackImagerectangle ($aimg, 0,0, $img _height-1, $img _width-1, $black);//First a black rectangle surrounds
In the distributed system, the need to generate global uid or more, the snowflake of Twitter to solve this demand, implementation is still very simple, remove configuration information, the core code is the millisecond time 41-bit + machine ID 10-bit + millisecond sequence 12 bits. There are many PHP plug-ins on the Web module, the core of the network communication will generate the ID sent to PHP use, not in-depth study of PHP module writing. No more
] = Strval (Mt_rand ("1111", "9999")); Generate 4-bit random numbers and put them in sessionWho can make the next addition, you can generate letters and numbers at the same time?? ----finished by Sports98.$aimg = Imagecreate ($img _height, $img _width); Create a pictureImagecolorallocate ($aimg, 255,255,255); Image background, imagecolorallocate the 1th time definition of color PHP is considered an undertone.$black = Imagecolorallocate ($aimg, 0,0,0); Define the required BlackImagerectangle ($ai
When the display is turned off, the build speed of 30,000 per millisecond can be reached/*** An implementation of Twitter snowflake ID Generator*/ Public classSnowflakeid {Private Final Static LongEPOCH = 0L;//shift for smaller timestamp Private Final Static LongDevice_id_bits = 2L; Private Final Static LongSequence_bits = 16L; Private Final Static Longmax_worker_id = -1l ^ -1l //with non-or | xor ^, only the bit on Worker_id_bits is 1 Private
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.