├── .gitignore ├── pics ├── 10.gif ├── 11.gif ├── 7.gif ├── 9.gif ├── flow.png ├── PPjwP.png ├── n2U3N.png ├── pcrypt.gif ├── ppt_img.gif ├── scrypt.gif ├── tGPV0.png ├── urlnuri.jpg ├── 0635cbe8.png ├── BSD_disk.png ├── JVM-Stack.png ├── Semaphore.png ├── image005.jpg ├── image007.jpg ├── image008.jpg ├── image009.jpg ├── 2018040302.jpg ├── Iterator-1.jpg ├── JNIFigure1.gif ├── ProcessState.png ├── _u4E0B_u8F7D.png ├── cookiedata.png ├── master-slave.png ├── url_diagram.png ├── 2017-06-11-ca.png ├── CountdownLatch.png ├── CyclicBarrier.png ├── ssl-offloading.jpg ├── 111521118015898.gif ├── 111521118445538.gif ├── 111521118483039.gif ├── 111521118640738.gif ├── 111521119203347.gif ├── 111521119368714.gif ├── 1492928105791_3.png ├── 1492928416812_4.png ├── 1492929000361_5.png ├── 1492929444818_6.png ├── 1492929553651_7.png ├── 1492930243286_8.png ├── 20150928140509757.png ├── 600px-Sharedmem.jpg ├── How-HTTPS-Works.png ├── java-collections.png ├── java-collections1.png ├── linux-filesystem.png ├── monitor-lock-rule.png ├── mutualssl_small.png ├── thread-join-rule.png ├── thread-start-rule.png ├── HTTP1_x_Connections.png ├── HowLinkedListWorks.png ├── master-slave-proxy.png ├── network-of-networks.gif ├── single-thread-rule.png ├── DP-Decorator-java.io.png ├── JVM-runtime-data-area.jpg ├── class_loader_hierarchy.png ├── inode_with_signatures.jpg ├── volatile-variable-rule.png ├── 7779232-1e8ed39548081a1f.png ├── 7779232-96822582feb08651.png ├── MultiNode-SpringSession.jpg ├── MultiNode-StickySessions.jpg ├── 2018-05-29-15275543393037.jpg ├── HTTP_RequestMessageExample.png ├── HTTP_ResponseMessageExample.png ├── JNI-Java-Native-Interface.jpg ├── 2_14_microkernelArchitecture.jpg ├── MultiNode-SessionReplication.jpg ├── docker-filesystems-busyboxrw.png ├── 76a49594323247f21c9b3a69945445ee.png ├── GUID_Partition_Table_Scheme.svg.png ├── LOun2W9134NxVugmbJPp15d4LalxC4O.png ├── NP4z3i8m38Ntd28NQ4_0KCJ2q044Oez.png ├── SoWkIImgAStDuU8goIp9ILK8IatCoQn.png ├── SoWkIImgAStDuU8goIp9ILLmB2xEJyv.png ├── SoWkIImgAStDuU8goIp9ILLmJ4ylIar.png ├── SoWkIImgAStDuU8goIp9ILLmJyrBBKh.png ├── SoWkIImgAStDuU8goIp9ILLmpiyjo2_.png ├── SoWkIImgAStDuUBAp2j9BKfBJ4vLy0G.png ├── SoWkIImgAStDuUBAp2j9BKfBJ4vLy4q.png ├── VP4n3i8m34Ntd28NQ4_0KCJ2q044Oez.png ├── VP6n3i8W48Ptde8NQ9_0eSR5eOD6uqx.png ├── ZnJvbT1jc2RuJnVybD15VkdkdVYyUXZ.jpg ├── 014fbc4d-d873-4a12-b160-867ddaed9807.jpg ├── 0157d362-98dd-4e51-ac26-00ecb76beb3e.png ├── 026d3cb4-67f7-4a83-884d-8032f57ec446.png ├── 02986f62-c641-44a8-a55f-983581490e0c.png ├── 037c3a0b-332d-434d-a374-f343ef72c8e1.jpg ├── 03f47940-3843-4b51-9e42-5dcaff44858b.jpg ├── 042cf928-3c8e-4815-ae9c-f2780202c68f.png ├── 04f41228-375d-4b7d-bfef-738c5a7c8f07.jpg ├── 051e436c-0e46-4c59-8f67-52d89d656182.png ├── 05907ab4-42c5-4b5e-9388-6617f6c97bea.jpg ├── 061c29ce-e2ed-425a-911e-56fbba1efce3.jpg ├── 061c88c1-572f-424f-b580-9cbce903a3fe.png ├── 06976908-98ab-46e9-a632-f0c2760ec46c.png ├── 075e1977-7846-4928-96c8-bb5b0268693c.jpg ├── 07717718-1230-4347-aa18-2041c315e670.jpg ├── 07903a31-0fb3-45fc-86f5-26f0b28fa4e7.png ├── 08427d38-8df1-49a1-8990-e0ce5ee36ca2.png ├── 0889c0b4-07b4-45fc-873c-e0e16b97f67d.png ├── 08f32fd3-f736-4a67-81ca-295b2a7972f2.jpg ├── 09b52bcb-88ba-4e36-8244-b375f16ad116.jpg ├── 09e6e8d4-4d83-4949-b908-6d6b4c2fd064.png ├── 0a9f4125-b6ab-4e94-a807-fd7070ae726a.png ├── 0aaf4630-d2a2-4783-b3f7-a2b6a7dfc01b.jpg ├── 0b587744-c0a8-46f2-8d72-e8f070d67b4b.jpg ├── 0c55e11c-d3ce-4cd8-b139-028aea6f40e3.png ├── 0df5d84c-e7ca-4e3a-a688-bb8e68894467.png ├── 0e34263d-7287-4ffe-a716-37c53d1a2526.png ├── 0ea37ee2-c224-4c79-b895-e131c6805c40.png ├── 0ee0f61b-c782-441e-bf34-665650198ae0.jpg ├── 0f373947-c68f-45b4-a59e-086154745ac5.png ├── 0f754c1d-b5cb-48cd-90e0-4a86034290a1.png ├── 107a6a2b-f15b-4cad-bced-b7fb95258c9c.png ├── 10bdf7bf-0daa-4a26-b927-f142b3f8e72b.png ├── 10f5e35b-1c71-4717-9e80-47f259702642.jpg ├── 11236498-1417-46ce-a1b0-e10054256955.png ├── 1164a71f-413d-494a-9cc8-679fb6a2613d.jpg ├── 1202b2d6-9469-4251-bd47-ca6034fb6116.png ├── 123bdf81-1ef5-48a9-a08c-2db97057b4d2.png ├── 12f958ee-ea02-481a-86ae-acc24934ad80.png ├── 137c593d-0a9e-47b8-a9e6-b71f540b82dd.png ├── 13b0940e-d1d7-4b17-af4f-b70cb0a75e08.png ├── 14cfe8d4-e31b-49e0-ac6a-6f4f7aa06ab6.png ├── 15313ed8-a520-4799-a300-2b6b36be314f.jpg ├── 1556770b-8c01-4681-af10-46f1df69202c.jpg ├── 1582217a-ed46-4cac-811e-90d13a65163b.png ├── 15b45dc6-27aa-4519-9194-f4acfa2b077f.jpg ├── 168e893c-e4a0-4ba4-b81f-9d993483abd0.jpg ├── 17976404-95f5-480e-9cb4-250e6aa1d55f.png ├── 1818e141-8700-4026-99f7-900a545875f5.png ├── 185b9c49-4c13-4241-a848-fbff85c03a64.png ├── 1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg ├── 1a2f2998-d0da-41c8-8222-1fd95083a66b.png ├── 1a851e90-0d5c-4d4f-ac54-34c20ecfb903.jpg ├── 1a9977e4-2f5c-49a6-aec9-f3027c9f46a7.png ├── 1ab49e39-012b-4383-8284-26570987e3c4.jpg ├── 1b7f180e-7fee-4eaf-8ebb-164b68ae2b29.png ├── 1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png ├── 1bea398f-17a7-4f67-a90b-9e2d243eaa9a.png ├── 1bfa3118-f3cd-4480-a950-cf6d646015db.png ├── 1c4e8185-8153-46b6-bd5a-288b15feeae6.png ├── 1ca52246-c443-48ae-b1f8-1cafc09ec75c.png ├── 1ee5f0a5-b8df-43b9-95ab-c516c54ec797.jpg ├── 1f039a45-6b91-4f31-a2c2-6c63eb8bdb56.png ├── 1f080e53-4758-406c-bb5f-dbedf89b63ce.jpg ├── 1f4a7f10-52b2-4bd7-a67d-a9581d66dc62.jpg ├── 1fc969e4-0e7c-441b-b53c-01950d2f2be5.png ├── 2017511e-22f0-4d74-873d-1261b71cf5a4.png ├── 207c1801-2335-4b1b-b65c-126a0ba966cb.png ├── 21041ec2-babb-483f-bf47-8b8148eec162.png ├── 211c60d4-75ca-4acd-8a4f-171458ed58b4.jpg ├── 220790c6-4377-4a2e-8686-58398afc8a18.png ├── 22de0538-7c6e-4365-bd3b-8ce3c5900216.png ├── 22fda4ae-4dd5-489d-ab10-9ebfdad22ae0.jpg ├── 23ba890e-e11c-45e2-a20c-64d217f83430.png ├── 245fd2fb-209c-4ad5-bc5e-eb5664966a0e.jpg ├── 249f3bb1-feee-4805-a259-a72699d638ca.jpg ├── 25d6d3d4-4726-47b1-a9cb-3316d1ff5dd5.png ├── 265a355d-aead-48aa-b455-f33b62fe729f.png ├── 2719067e-b299-4639-9065-bed6729dbf0b.png ├── 271ce08f-c124-475f-b490-be44fedc6d2e.png ├── 2766d04f-7dad-42e4-99d1-60682c9d5c61.jpg ├── 276c31df-3b28-4ac2-b006-1e80fc86a64f.jpg ├── 278fe431-af88-4a95-a895-9c3b80117de3.jpg ├── 27cd6f0c-f581-45da-b8c9-fed026830560.png ├── 27ff9548-edb6-4465-92c8-7e6386e0b185.png ├── 280f7728-594f-4811-a03a-fa8d32c013da.png ├── 2858f8ad-aedb-45a5-a706-e98c96d690fa.jpg ├── 2861e923-4862-4526-881c-15529279d49c.png ├── 28ab96b4-82ea-4d99-99fb-b320f60d0a58.png ├── 292b4a35-4507-4256-84ff-c218f108ee31.jpg ├── 293d2af9-de1d-403e-bed0-85d029383528.png ├── 2991c772-fb1c-4051-a9c7-932b68e76bd7.jpg ├── 2a842a14-e4ab-4f37-83fa-f82c206fe426.png ├── 2a8e1442-2381-4439-a83f-0312c8678b1f.png ├── 2ac50b81-d92a-4401-b9ec-f2113ecc3076.png ├── 2ad244f5-939c-49fa-9385-69bc688677ab.jpg ├── 2bcc58ad-bf7f-485c-89b5-e7cafc211ce2.jpg ├── 2bf2fd8f-5ade-48ba-a2b3-74195ac77c4b.png ├── 2c4556e4-0751-4377-ab08-e7b89d697ca7.png ├── 2c8a7a87-1bf1-4d66-9ba9-225a1add0a51.png ├── 2d09a847-b854-439c-9198-b29c65810944.png ├── 2e6c72f5-3b8e-4e32-b87b-9491322628fe.png ├── 30210b86-472d-4574-abb6-b74898cc17a4.jpg ├── 3086c248-b552-499e-b101-9cffe5c2773e.png ├── 31d99967-1171-448e-8531-bccf5c14cffe.jpg ├── 323ffd6c-8b54-4f3e-b361-555a6c8bf218.png ├── 32b8374a-e822-4720-af0b-c0f485095ea2.jpg ├── 33ac2b23-cb85-4e99-bc41-b7b7199fad1c.png ├── 348bc2db-582e-4aca-9f88-38c40e9a0e69.png ├── 35650b4b-efa1-49ba-9680-19837027cfc9.png ├── 3646544a-cb57-451d-9e03-d3c4f5e4434a.png ├── 37a72755-4890-4b42-9eab-b0084e0c54d9.png ├── 37e79a32-95a9-4503-bdb1-159527e628b8.png ├── 386cd64f-7a9d-40e6-8c55-22b90ee2d258.png ├── 390c913b-5f31-444f-bbdb-2b88b688e7ce.jpg ├── 3939369b-3a4a-48a0-b9eb-3efae26dd400.png ├── 395a9e83-b1a1-4a1d-b170-d081e7bb5bab.png ├── 396be981-3f2c-4fd9-8101-dbf9c841504b.jpg ├── 39ccb299-ee99-4dd1-b8b4-2f9ec9495cb4.png ├── 3b0d1aa8-d0e0-46c2-8fd1-736bf08a11aa.jpg ├── 3b49dd67-2c40-4b81-8ad2-7bbb1fe2fcbd.png ├── 3ca58a41-8794-49c1-992e-de5d579a50d1.png ├── 3cd630ea-017c-488d-ad1d-732b4efeddf5.png ├── 3d5b828e-5c4d-48d8-a440-281e4a8e1c92.png ├── 3f5bba4b-7813-4aea-b578-970c7e3f6bf3.jpg ├── 3fb5b255-b791-45b6-8754-325c8741855a.png ├── 3fdfc89d-719e-4d93-b518-29fa612b3b18.png ├── 3ff4f00a-2321-48fd-95f4-ce6001332151.png ├── 41026c79-dfc1-40f7-85ae-062910fd272b.png ├── 41392d76-dd1d-4712-85d9-e8bb46b04a2d.png ├── 423f2a40-bee1-488e-b460-8e76c48ee560.png ├── 426df589-6f97-4622-b74d-4a81fcb1da8e.png ├── 43f2cafa-3568-4a89-a895-4725666b94a6.png ├── 44e4a7ab-215c-41a1-8e34-f55f6c09e517.jpg ├── 44edefb7-4b58-4519-b8ee-4aca01697b78.jpg ├── 450px-HTTP_persistent_connection.svg.png ├── 4583e24f-424b-4d50-8a14-2c38a1827d4a.png ├── 45e0e0bf-386d-4280-a341-a0b9496c7674.png ├── 4628274c-25b6-4053-97cf-d1239b44c43d.png ├── 46cec213-3048-4a80-aded-fdd577542801.jpg ├── 46f66e88-e65a-4ad0-a060-3c63fe22947c.png ├── 47358f87-bc4c-496f-9a90-8d696de94cee.png ├── 47d98583-8bb0-45cc-812d-47eefa0a4a40.jpg ├── 485fdf34-ccf8-4185-97c6-17374ee719a0.png ├── 4885d0bc-1441-460f-bd75-a2088aa7f2d4.png ├── 48a934ff-a29b-434c-8e1d-8c8ec20cb91d.png ├── 48f8f98e-8dfd-450d-8b5b-df4688f0d377.jpg ├── 49495c95-52e5-4c9a-b27b-92cf235ff5ec.png ├── 49d6de7b-0d0d-425c-9e49-a1559dc23b10.png ├── 4bb7ed45-ec14-4d31-9da4-94024d9d3b05.png ├── 4cf711a8-7ab2-4152-b85c-d5c226733807.png ├── 4d741402-344d-4b7c-be01-e57184bcad0e.png ├── 4d930e22-f493-49ae-8dff-ea21cd6895dc.png ├── 4dc08713-f6fe-424c-a24c-ad5a993a941d.png ├── 4e2485e4-34bd-4967-9f02-0c093b797aaa.png ├── 4e760981-a0c5-4dbf-9fbf-ce963e0629fb.png ├── 4f48e806-f90b-4c09-a55f-ac0cd641c047.png ├── 4fc032e0-ac6f-4b42-9182-ee104a25e7a1.png ├── 4ff355cf-9a7f-4468-af43-e5b02038facc.jpg ├── 50831a6f-2777-46ea-a571-29f23c85cc21.jpg ├── 50d38e84-238f-4081-8876-14ef6d7938b5.jpg ├── 5158bc2f-83a6-4351-817e-c9b07f955d76.png ├── 518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png ├── 51e2ed95-65b8-4ae9-8af3-65602d452a25.jpg ├── 51fb761d-8ce0-4472-92ff-2f227ac7888a.png ├── 5292faa6-0141-4638-bf0f-bb95b081dcba.jpg ├── 52e1af6f-3a7a-4bee-aa8f-fcb5dacebe40.jpg ├── 5341d726-ffde-4d2a-a000-46597bcc9c5a.png ├── 5359cbf5-5a79-4874-9b17-f23c53c2cb80.jpg ├── 536c6dfd-305a-4b95-b12c-28ca5e8aa043.png ├── 53cd9ade-b0a6-4399-b4de-7f1fbd06cdfb.png ├── 540631a4-6018-40a5-aed7-081e2eeeaeea.png ├── 54cb3f21-485b-4159-8bf5-dcde1c4d4c36.png ├── 54f1e052-0596-4b5e-833c-e80d75bf3f9b.png ├── 55dc4e84-573d-4c13-a765-52ed1dd251f9.png ├── 562f2844-d77c-40e0-887a-28a7128abd42.png ├── 58e57a21-6b6b-40b6-af85-956dd4e0f55a.jpg ├── 5930aeb8-847d-4e9f-a168-9334d7dec744.png ├── 5942debd-fc00-477a-b390-7c5692cc8070.jpg ├── 5999e5de-7c16-4b52-b3aa-6dc7b58c7894.png ├── 5aa82b89-f266-44da-887d-18f31f01d8ef.png ├── 5aac64d3-2c7b-4f32-9e9a-1df2186f588b.png ├── 5acf7550-86c5-4c5b-b912-8ce70ef9c34e.png ├── 5b910141-08b6-442d-a4bc-a1608458c636.png ├── 5c638d59-d4ae-4ba4-ad44-80bdc30f38dd.jpg ├── 5d4a5181-65fb-4bf2-a9c6-899cab534b44.png ├── 5e8d3c04-d93b-48a7-875e-41ababed00e0.jpg ├── 5e9b10f3-9504-4483-9667-d4770adebf9f.png ├── 5ed71283-a070-4b21-85ae-f2cbfd6ba6e1.jpg ├── 5f5ef0b6-98ea-497c-a007-f6c55288eab1.png ├── 5f96e565-0693-47df-80f1-29e4271057b7.png ├── 600e9c75-5033-4dad-ae2b-930957db638e.png ├── 6019b2db-bc3e-4408-b6d8-96025f4481d6.png ├── 61942711-45a0-4e11-bbc9-434e31436f33.png ├── 62e0dd4f-44c3-43ee-bb6e-fedb9e068519.png ├── 62e77997-6957-4b68-8d12-bfd609bb2c68.jpg ├── 63c2909f-0c5f-496f-9fe5-ee9176b31aba.jpg ├── 63cd5b50-d6d8-4df6-8912-ef4a1dd5ba13.jpg ├── 6539b9a4-2b24-4d10-8c94-2eb5aba1e296.png ├── 654acfed-a6a5-4fc7-8f40-3fdcae57bae8.jpg ├── 658fc5e7-79c0-4247-9445-d69bf194c539.png ├── 66192382-558b-4b05-a35d-ac4a2b1a9811.jpg ├── 66402828-fb2b-418f-83f6-82153491bcfe.jpg ├── 6675d713-8b59-4067-ad16-fdd538d4bb43.png ├── 6729baa0-57d7-4817-b3aa-518cbccf824c.jpg ├── 67bf5487-c45d-49b6-b9c0-a058d8c68902.png ├── 685a692f-8f76-4cac-baac-b68e2df9a30f.jpg ├── 68778c1b-15ab-4826-99c0-3b4fd38cb9e9.png ├── 688dacfe-1057-412f-b3a1-86abb5b0f914.png ├── 68b110b9-76c6-4ee2-b541-4145e65adb3e.jpg ├── 691f11eb-31a7-46be-9de1-61f433c4b3c7.png ├── 699b4f96-d63f-46ea-a581-2b3d95eceb6a.jpg ├── 69f16984-a66f-4288-82e4-79b4aa43e835.jpg ├── 6c0f4afb-20ab-49fd-837d-8144f4e38bfd.png ├── 6f4abf41-3728-4a6b-9b94-85eed7ca8163.png ├── 70fa1f83-dae7-456d-b94b-ce28963b2ba1.png ├── 71363383-2d06-4c63-8b72-c01c2186707d.png ├── 71f61bc3-582d-4c27-8bdd-dc7fb135bf8f.png ├── 7299afd2-9114-44e6-9d5e-4025d0b2a541.png ├── 72f0ff69-138d-4e54-b7ac-ebe025d978dc.png ├── 72fe492e-f1cb-4cfc-92f8-412fb3ae6fec.png ├── 73b73189-9e95-47e5-91d0-9378b8462e15.png ├── 766aedd0-1b00-4065-aa2b-7d31138df84f.png ├── 76a25fc8-a579-4d7c-974b-7640b57fbf39.jpg ├── 76b48b4c-8999-4967-893b-832602e73285.png ├── 76dc7769-1aac-4888-9bea-064f1caa8e77.jpg ├── 77931a4b-72ba-4016-827d-84b9a6845a51.png ├── 77f81379-3987-4036-8d7c-93a4dcf7b05d.jpg ├── 79076335-cfae-4fe6-97b9-62e8eebbf2b9.png ├── 794239e3-4baf-4aad-92df-f02f59b2a6fe.png ├── 79b12431-6d9d-4a7d-985b-1b79bc5bf5fb.png ├── 7a29acce-f243-4914-9f00-f2988c528412.jpg ├── 7a3c6a30-c735-4edb-8115-337288a4f0f2.jpg ├── 7ab8ca28-2a41-4adf-9502-cc0a21e63b51.jpg ├── 7b038838-c75b-4538-ae84-6299386704e5.jpg ├── 7b281b1e-0595-402b-ae35-8c91084c33c1.png ├── 7b3efa99-d306-4982-8cfb-e7153c33aab4.png ├── 7b48448f-cbe3-4287-9041-f56566b9d0b4.png ├── 7b68b142-9489-44f6-87b0-4cb5c6431e63.jpg ├── 7bd202a7-93d4-4f3a-a878-af68ae25539a.png ├── 7be0abf9-687c-4451-becd-626b0be7ec22.jpg ├── 7c54de21-e2ff-402e-bc42-4037de1c1592.png ├── 7c98e1b6-c446-4cde-8513-5c11b9f52aea.jpg ├── 7e873b60-44dc-4911-b080-defd5b8f0b49.png ├── 7ec9d619-fa60-4a2b-95aa-bf1a62aad408.jpg ├── 7f38a583-2f2e-4738-97af-510e6fb403a7.png ├── 7f642a65-b167-4c8f-b382-8322c6322b2c.jpg ├── 7fffa4b8-b36d-471f-ad0c-a88ee763bb76.png ├── 8006a450-6c2f-498c-a928-c927f758b1d0.png ├── 80804f52-8815-4096-b506-48eef3eed5c6.png ├── 81538cd5-1bcf-4e31-86e5-e198df1e013b.jpg ├── 8229e8e7-a183-4d29-94e6-e8d8537c6ce5.png ├── 823cdab7-3779-4e3a-a951-dc2d154e0ee6.jpg ├── 82cfda3b-b53b-4c89-9fdb-26dd2db0cd02.jpg ├── 83185315-793a-453a-a927-5e8d92b5c0ef.jpg ├── 836a4eaf-4798-4e48-b52a-a3dab9435ace.png ├── 8433fbb2-c35c-45ef-831d-e3ca42aebd51.png ├── 85370d54-40d1-4912-bcbe-37a2481c861d.png ├── 85583359-1b45-45f2-9811-4f7bb9a64db7.jpg ├── 8587132a-021d-4f1f-a8ec-5a9daa7157a7.png ├── 85c05fb1-5546-4c50-9221-21f231cdc8c5.jpg ├── 864bfa7d-1149-420c-a752-f9b3d4e782ec.png ├── 8668a3e1-c9c7-4fcb-98b2-a96a5d841579.png ├── 867e93eb-3161-4f39-b2d2-c0cd3788e194.png ├── 86e6a91d-a285-447a-9345-c5484b8d0c47.png ├── 88ff46b3-028a-4dbb-a572-1f062b8b96d3.png ├── 897503d0-59e3-4752-903d-529fbdb72fee.jpg ├── 8a4c6ad4-a816-47d1-b93f-7ca4f78ab67a.png ├── 8adb2591-d3f1-4632-84cb-823fb9c5eb09.jpg ├── 8ae4550b-f0cb-4e4d-9e2b-c550538bf230.png ├── 8af348d0-4d72-4f76-b56c-0a440ed4673d.png ├── 8b335d94-c1ca-42e1-ad48-bb179d28a4f1.jpg ├── 8b798007-e0fb-420c-b981-ead215692417.jpg ├── 8c0b3ae1-1087-46f4-8637-8d46b4ae659c.png ├── 8c662999-c16c-481c-9f40-1fdba5bc9167.png ├── 8cc671f0-7134-44b1-a7b5-6d24fe55e1c1.jpg ├── 8dfb4cc9-26da-45e7-b820-4576fa1cbb0e.png ├── 8f0cc500-5994-4c7a-91a9-62885d658662.png ├── 8f3b9519-d705-48fe-87ad-2e4052fc81d2.png ├── 8f64e9c5-7682-4feb-9312-dea09514e160.jpg ├── 8f6f9dc9-9ecd-47c8-b50e-2814f0219056.png ├── 8fe838e3-ef77-4f63-bf45-417b6bc5c6bb.png ├── 902b83ab-8054-4bd2-898f-9a4a0fe52830.jpg ├── 902ef59f-7bcb-45a1-a80a-2f7afaa03629.jpg ├── 910f613f-514f-4534-87dd-9b4699d59d31.png ├── 9110c1a0-8a54-4145-a814-2477d0128114.png ├── 91ef04e4-923a-4277-99c0-6be4ce81e5ac.jpg ├── 920c034c-c212-4f79-9ddb-84e4bb6cd088.png ├── 924914c0-660c-4e4a-bbc0-1df1146e7516.jpg ├── 926c7438-c5e1-4b94-840a-dcb24ff1dafe.png ├── 92ad9bae-7d02-43ba-8115-a9d6f530ca28.png ├── 94589319-975f-490b-8bae-90b3a4953559.png ├── 952afa9a-458b-44ce-bba9-463e60162945.png ├── 952e06bd-5a65-4cab-82e4-dd1536462f38.png ├── 955af054-8872-4569-82e7-2e10b66bc38e.png ├── 96b63e13-e2d8-4ddb-9aa1-a38959ca96e5.jpg ├── 992faced-afcf-414d-b801-9c16d6570fec.jpg ├── 9b829410-86c4-40aa-ba8d-9e8e26c0eeb8.jpg ├── 9b838aee-0996-44a5-9b0f-3d1e3e2f5100.png ├── 9bbddeeb-e939-41f0-8e8e-2b1a0aa7e0a7.png ├── 9cd0ae20-4fb5-4017-a000-f7d3a0eb3529.png ├── 9d0a637c-6a8f-4f5a-99b9-fdcfa26793ff.png ├── 9d549816-60b7-4899-9877-23b01503ab13.png ├── 9e80f75a-b12b-4344-80c8-1f9ccc2d5246.jpg ├── 9ea86eb5-000a-4281-b948-7b567bd6f1d8.png ├── ClienteServidorSockets1521731145260.jpg ├── a01d1516-8168-461a-a24b-620b9cfc40f4.png ├── a0df8edc-581b-4977-95c2-d7025795b899.png ├── a1198642-9159-4d88-8aec-c3b04e7a2563.jpg ├── a2d13178-f1ef-4811-a240-1fe95b55b1eb.png ├── a314bb79-5b18-4e63-a976-3448bffa6f1b.png ├── a3253deb-8d21-40a1-aae4-7d178e4aa319.jpg ├── a3da4342-078b-43e2-b748-7e71bec50dc4.png ├── a3f34241-bb80-4879-8ec9-dff2d81b514e.jpg ├── a40661e4-1a71-46d2-a158-ff36f7fc3331.png ├── a4248c4b-6c1d-4fb8-a557-86da92d3a294.jpg ├── a4b162e5-db2a-4a27-b213-1fe481c5a06a.png ├── a4c17d43-fa5e-4935-b74e-147e7f7e782c.png ├── a57a6fc8-c5e9-456c-80ff-a5139dda4b6e.png ├── a58e294a-615d-4ea0-9fbf-064a6daec4b2.png ├── a6026bb4-3daf-439f-b1ec-a5a24e19d2fb.jpg ├── a6ac2b08-3861-4e85-baa8-382287bfee9f.png ├── a6c20f60-5eba-427d-9413-352ada4b40fe.png ├── a74b70ac-323a-4b31-b4d5-90569b8a944b.png ├── a9077f06-7584-4f2b-8c20-3a8e46928820.jpg ├── aa29cc88-7256-4399-8c7f-3cf4a6489559.png ├── aa42f9c6-ad7a-48f4-8e8b-f3b6de3feaec.png ├── aa844ff0-cd16-4478-b415-da071b615a17.jpg ├── ab77240d-7338-4547-9183-00215e7220ec.png ├── abb3e0d1-c1bd-45d0-8190-73c74a9f6679.png ├── ac106e7e-489a-4082-abd9-dabebe48394c.jpg ├── ac9b31ec-cef1-4880-a875-fc4571ca10e1.png ├── ace830df-9919-48ca-91b5-60b193f593d2.png ├── ae1b27b8-bc13-42e7-ac12-a2242e125499.png ├── ae3fc93a-44d5-4beb-b05a-874bd9c0a657.png ├── af198da1-2480-4043-b07f-a3b91a88b815.png ├── af4639f9-af54-4400-aaf5-4e261d96ace7.png ├── b0c97118-8f30-4619-9c22-a141f627db39.png ├── b0e8ef47-2f23-4379-8c64-10d5cb44d438.jpg ├── b0f61ac2-a4b6-4042-9cf0-ccf4238c1ff7.png ├── b1df9732-86ce-4d69-9f06-fba1db7b3b5a.jpg ├── b1fa0453-a4b0-4eae-a352-48acca8fff74.png ├── b20a3466-44b4-445e-87c7-dd4fb9ef44b2.png ├── b29f8971-9cb8-480d-b986-0e60c2ece069.png ├── b396d726-b75f-4a32-89a2-03a7b6e19f6f.jpg ├── b418ca51-f005-4510-b7ad-f092eb6aeb24.png ├── b4252c85-6fb0-4995-9a68-a1a5925fbdb1.png ├── b4b29aa9-dd2c-467b-b75f-ca6541cb25b5.jpg ├── b54eeb16-0b0e-484c-be62-306f57c40d77.jpg ├── b5bdcbe2-b958-4aef-9151-6ad963cb28b4.png ├── b8081c84-62c4-4019-b3ee-4bd0e443d647.jpg ├── b84ba6fb-312b-4e69-8c77-fb6eb6fb38d4.png ├── b8dd708d-f372-4b04-b828-1dd99021c244.png ├── b988877c-0f0a-4593-916d-de2081320628.jpg ├── b9a39d2a-618c-468b-86db-2e851f1a0057.jpg ├── b9d79a5a-e7af-499b-b989-f10483e71b8b.jpg ├── baaa681f-7c52-4198-a5ae-303b9386cf47.png ├── bb6a49be-00f2-4f27-a0ce-4ed764bc605c.png ├── bc603930-d74d-4499-a3e7-2d740fc07f33.png ├── bc775758-89ab-4805-9f9c-78b8739cf780.jpg ├── be5c2c61-86d2-4dba-a289-b48ea23219de.jpg ├── be7dca03-12ec-456b-8b54-b1b3161f5531.png ├── beba612e-dc5b-4fc2-869d-0b23408ac90a.png ├── bee1ff1d-c80f-4b3c-b58c-7073a8896ab2.jpg ├── bf0ff9fc-467e-4a3f-8922-115ba2c55bde.png ├── bf16c541-0717-473b-b75d-4115864f4fbf.jpg ├── bf667594-bb4b-4634-bf9b-0596a45415ba.jpg ├── bfbb11e2-d208-4efa-b97b-24cd40467cd8.png ├── c037c901-7eae-4e31-a1e4-9d41329e5c3e.png ├── c0a9fa91-da2e-4892-8c9f-80206a6f7047.png ├── c2117f61-1177-4768-bf33-cf4f950d911c.png ├── c23957e9-a572-44f8-be15-f306c8b92722.jpg ├── c28c6fbc-2bc1-47d9-9b2e-cf3d4034f877.jpg ├── c2cbf5d2-82af-4c78-bd43-495da5adf55f.png ├── c2d343f7-604c-4856-9a3c-c71d6f67fecc.png ├── c2f0c8e2-da66-498c-a38f-e1176abee29e.png ├── c3369072-c740-43b0-b276-202bd1d3960d.jpg ├── c3c1c0e8-3a78-4426-961f-b46dd0879dd8.png ├── c4c14368-519c-4a0e-8331-0a553715e3e7.jpg ├── c5022dd3-be22-4250-b9f6-38ae984a04d7.jpg ├── c5085437-54df-4304-b62d-44b961711ba7.png ├── c5f611f0-fd5c-4158-9003-278141136e6e.jpg ├── c625baa0-dde6-449e-93df-c3a67f2f430f.jpg ├── c79da808-0f28-4a36-bc04-33ccc5b83c13.png ├── c7d4956c-9988-4a10-a704-28fdae7f3d28.png ├── c812c28a-1513-4a82-bfda-ab6a40981aa0.png ├── c81af7d8-3128-4a3c-a9c9-3e0f5b87ab22.jpg ├── c8d18ca9-0b09-441a-9a0c-fb063630d708.png ├── c8dbff58-d981-48be-8c1c-caa6c2738791.jpg ├── c9a1de44-b1c0-4d13-a654-827d4ef8a723.png ├── c9ad2bf4-5580-4018-bce4-1b9a71804d9c.png ├── c9cfcd20-c901-435f-9a07-3e46830c359f.jpg ├── c9cfd600-bc91-4f3a-9f99-b42f88a5bb24.jpg ├── cb0ed469-27ab-471b-a830-648b279103c8.png ├── cbf50eb8-22b4-4528-a2e7-d187143d57f7.png ├── cd5fbcff-3f35-43a6-8ffa-082a93ce0f0e.png ├── cdbe1d12-5ad9-4acb-a717-bbc822c2acf3.png ├── ce039f03-6588-4f0c-b35b-a494de0eac47.png ├── cf4386a1-58c9-4eca-a17f-e12b1e9770eb.png ├── d0afdd23-c9a5-4d1c-9b3d-404bff3bd0d1.png ├── d160ec2e-cfe2-4640-bda7-62f53e58b8c0.png ├── d1f81ac3-9fdb-4371-a49d-ca84917aa89f.jpg ├── d2d34239-e7c1-482b-b33e-3170c5943556.jpg ├── d49466db-fdd3-4d36-8a86-47dc45c07a1e.jpg ├── d4c3a4a1-0846-46ec-9cc3-eaddfca71254.jpg ├── d4eef1e2-5703-4ca4-82ab-8dda93d6b81f.png ├── d52270b4-9097-4667-9f18-f405fc661c99.png ├── d5c16be7-a1c0-4c8d-b6b9-5999cdc6f9b3.png ├── d7f6dec1-02b6-4969-b3ab-e01ee78659b9.png ├── d99dc9e2-197c-4085-813d-7195da1c6762.png ├── db4921d4-184b-48ba-a3cf-1d1141e3ba2d.png ├── db54db2f-82b2-4222-8d63-e49a8a7fc966.png ├── dbb8516d-37ba-4e2c-b26b-eefd7de21b45.png ├── dbc5c9f1-c13c-4d06-86ba-7cc949eb4c8f.jpg ├── dbd60b1f-b700-4da6-a993-62578e892333.jpg ├── dc00f70e-c5c8-4d20-baf1-2d70014a97e3.jpg ├── dd15a984-e977-4644-b127-708cddb8ca99.png ├── dd3b289c-d90e-44a6-a44c-4880517eb1de.png ├── dd782132-d830-4c55-9884-cfac0a541b8e.png ├── dd78a1fe-1ff3-4bcf-a56f-8c003995beb6.jpg ├── dda1608d-26e0-4f10-8327-a459969b150a.png ├── ddb5ff4c-4ada-46aa-9bf1-140bdb5e4676.jpg ├── ddcf2327-8d84-425d-8535-121a94bcb88d.jpg ├── de9b9ea0-1327-4865-93e5-6f805c48bc9e.png ├── e026c24d-00fa-4e7c-97a8-95a98cdc383a.png ├── e0900bb2-220a-43b7-9aa9-1d5cd55ff56e.png ├── e130e5b8-b19a-4f1e-b860-223040525cf6.jpg ├── e143f6da-d114-4ba4-8712-f65299047fa2.png ├── e1eda3d5-5ec8-4708-8e25-1a04c5e11f48.png ├── e2f0d889-2330-424c-8193-198edebecff7.png ├── e3124763-f75e-46c3-ba82-341e6c98d862.jpg ├── e31abb94-9201-4e06-9902-61101b92f475.png ├── e3bf5de4-ab1e-4a9b-896d-4b0ad7e9220a.jpg ├── e3f1657c-80fc-4dfa-9643-bf51abd201c6.png ├── e41405a8-7c05-4f70-8092-e961e28d3112.jpg ├── e6723b94-1a33-4605-b775-f6813352d383.png ├── e6b733ad-606d-4028-b3e8-83c3a73a3797.jpg ├── e6bded8e-41a0-489a-88a6-638e88ab7666.jpg ├── e800b001-7779-495b-8459-d33a7440d7b8.jpg ├── e82e0454-4ece-435e-945f-90bc0d37bf44.png ├── e92d0ebc-7d46-413b-aec1-34a39602f787.png ├── ea2304ce-268b-4238-9486-4d8f8aea8ca4.png ├── ea5f3efe-d5e6-499b-b278-9e898af61257.jpg ├── eb4a7007-d437-4740-865d-672973effe25.png ├── eb859228-c0f2-4bce-910d-d9f76929352b.png ├── ec923dc7-864c-47b0-a411-1f2c48d084de.png ├── ecf8ad5d-5403-48b9-b6e7-f2e20ffe8fca.png ├── ed523051-608f-4c3f-b343-383e2d194470.png ├── ed5522bb-3a60-481c-8654-43e7195a48fe.png ├── ed7b96ac-6428-4bd5-9986-674c54c2a959.png ├── eebdeb57-8efb-4848-9bb6-97512990897c.jpg ├── ef280699-da36-4b38-9735-9b048a3c7fe0.png ├── ef8eab00-1d5e-4d99-a7c2-d6d68ea7fe92.png ├── f0574025-c514-49f5-a591-6d6a71f271f7.jpg ├── f0a31c04-6e26-408c-8395-88f4e2ae928b.jpg ├── f0e35b7a-2948-488a-a5a9-97d3f6b5e2d7.png ├── f1109d04-3c67-48a3-9963-2c475f94e175.jpg ├── f3080f83-6239-459b-8e9c-03b6641f7815.png ├── f3bfe11f-9cba-4ff2-8cc6-629068408a80.jpg ├── f3d3e072-e947-43e9-b999-22385fd569a0.jpg ├── f42443e0-208d-41ea-be44-c7fd97d2e3bf.png ├── f48e2b92-2c2a-48cb-a443-bd313e187a25.jpg ├── f4cdda3e-324c-49b5-8c14-08a3db634b29.png ├── f50a8e52-a683-444c-8e32-63c1890fe84a.jpg ├── f5477abd-c246-4851-89ab-6b1cde2549b1.png ├── f5757d09-88e7-4bbd-8cfb-cecf55604854.png ├── f61b5419-c94a-4df1-8d4d-aed9ae8cc6d5.png ├── f716427a-94f2-4875-9c86-98793cf5dcc3.jpg ├── f76067a5-7d5f-4135-9549-8199c77d8f1c.jpg ├── f7d170a3-e446-4a64-ac2d-cb95028f81a8.png ├── f7ecbb8d-bb8b-4d45-a3b7-f49425d6d83d.jpg ├── f7f7e3e5-7dd4-4173-9999-576b9e2ac0a2.png ├── f8047846-efd4-42be-b6b7-27a7c4998b51.png ├── f87afe72-c2df-4c12-ac03-9b8d581a8af8.jpg ├── f8b16d1e-7363-4544-94d6-4939fdf849dc.png ├── f8b3f73d-0fda-449f-b55b-fa36b7ac04cd.png ├── f900f266-a323-42b2-bc43-218fdb8811a8.jpg ├── f94389e9-55b1-4f49-9d37-00ed05900ae0.png ├── f9978fa6-9f49-4a0f-8540-02d269ac448f.png ├── f99ee771-c56f-47fb-9148-c0036695b5fe.jpg ├── f9f2a16b-4843-44d1-9759-c745772e9bcf.jpg ├── f9f9f993-8ece-4da7-b848-af9b438fad76.png ├── fa2273c3-1b5f-48ce-8e8b-441a4116c1c4.jpg ├── fa568fac-ac58-48dd-a9bb-23b3065bf2dc.png ├── faecea49-9974-40db-9821-c8636137df61.jpg ├── fb327611-7e2b-4f2f-9f5b-38592d408f07.png ├── fb44307f-8e98-4ff7-a918-31dacfa564b4.jpg ├── fb546e12-e1fb-4b72-a1fb-8a7f5000dce6.jpg ├── fbe54203-c005-48f0-8883-b05e564a3173.png ├── fc0c6b2d-68c7-4de8-aaaa-97355a4f0472.jpg ├── ff0c019c-6461-467d-a266-0455341fd4f4.png ├── ff396233-1bb1-4e74-8bc2-d7c90146f5dd.png ├── 011f3ef6-d824-4d43-8b2c-36dab8eaaa72-1.png ├── Technology-ComputerNetworking-Internet-ISPs.png └── hashMap_u54C8_u5E0C_u7B97_u6CD5_u4F8B_u56FE.png ├── other ├── README.md ├── group.png ├── 计算机网络脑图.png ├── LogoMakr_0zpEzN.png ├── Group.md ├── leetcode 总结.md └── 算法与数据结构.md ├── notes ├── 代码风格规范.md ├── 消息队列.md ├── 系统设计基础.md ├── Docker.md ├── 构建工具.md ├── Git.md ├── 攻击技术.md ├── 集群.md ├── 正则表达式.md └── 缓存.md ├── SUMMARY.md ├── Additional.md └── BOOKLIST.md /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.txt 3 | -------------------------------------------------------------------------------- /pics/10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/10.gif -------------------------------------------------------------------------------- /pics/11.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/11.gif -------------------------------------------------------------------------------- /pics/7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7.gif -------------------------------------------------------------------------------- /pics/9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9.gif -------------------------------------------------------------------------------- /other/README.md: -------------------------------------------------------------------------------- 1 | - 其他人添加的全新内容 2 | - 其他人的项目推广 3 | - 主页 README 引用的图片 4 | - 微信群描述文件 5 | -------------------------------------------------------------------------------- /pics/flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/flow.png -------------------------------------------------------------------------------- /other/group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/other/group.png -------------------------------------------------------------------------------- /pics/PPjwP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/PPjwP.png -------------------------------------------------------------------------------- /pics/n2U3N.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/n2U3N.png -------------------------------------------------------------------------------- /pics/pcrypt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/pcrypt.gif -------------------------------------------------------------------------------- /pics/ppt_img.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ppt_img.gif -------------------------------------------------------------------------------- /pics/scrypt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/scrypt.gif -------------------------------------------------------------------------------- /pics/tGPV0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/tGPV0.png -------------------------------------------------------------------------------- /pics/urlnuri.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/urlnuri.jpg -------------------------------------------------------------------------------- /other/计算机网络脑图.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/other/计算机网络脑图.png -------------------------------------------------------------------------------- /pics/0635cbe8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0635cbe8.png -------------------------------------------------------------------------------- /pics/BSD_disk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/BSD_disk.png -------------------------------------------------------------------------------- /pics/JVM-Stack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/JVM-Stack.png -------------------------------------------------------------------------------- /pics/Semaphore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/Semaphore.png -------------------------------------------------------------------------------- /pics/image005.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/image005.jpg -------------------------------------------------------------------------------- /pics/image007.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/image007.jpg -------------------------------------------------------------------------------- /pics/image008.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/image008.jpg -------------------------------------------------------------------------------- /pics/image009.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/image009.jpg -------------------------------------------------------------------------------- /pics/2018040302.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2018040302.jpg -------------------------------------------------------------------------------- /pics/Iterator-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/Iterator-1.jpg -------------------------------------------------------------------------------- /pics/JNIFigure1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/JNIFigure1.gif -------------------------------------------------------------------------------- /pics/ProcessState.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ProcessState.png -------------------------------------------------------------------------------- /pics/_u4E0B_u8F7D.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/_u4E0B_u8F7D.png -------------------------------------------------------------------------------- /pics/cookiedata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/cookiedata.png -------------------------------------------------------------------------------- /pics/master-slave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/master-slave.png -------------------------------------------------------------------------------- /pics/url_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/url_diagram.png -------------------------------------------------------------------------------- /pics/2017-06-11-ca.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2017-06-11-ca.png -------------------------------------------------------------------------------- /pics/CountdownLatch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/CountdownLatch.png -------------------------------------------------------------------------------- /pics/CyclicBarrier.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/CyclicBarrier.png -------------------------------------------------------------------------------- /pics/ssl-offloading.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ssl-offloading.jpg -------------------------------------------------------------------------------- /other/LogoMakr_0zpEzN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/other/LogoMakr_0zpEzN.png -------------------------------------------------------------------------------- /pics/111521118015898.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/111521118015898.gif -------------------------------------------------------------------------------- /pics/111521118445538.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/111521118445538.gif -------------------------------------------------------------------------------- /pics/111521118483039.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/111521118483039.gif -------------------------------------------------------------------------------- /pics/111521118640738.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/111521118640738.gif -------------------------------------------------------------------------------- /pics/111521119203347.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/111521119203347.gif -------------------------------------------------------------------------------- /pics/111521119368714.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/111521119368714.gif -------------------------------------------------------------------------------- /pics/1492928105791_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1492928105791_3.png -------------------------------------------------------------------------------- /pics/1492928416812_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1492928416812_4.png -------------------------------------------------------------------------------- /pics/1492929000361_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1492929000361_5.png -------------------------------------------------------------------------------- /pics/1492929444818_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1492929444818_6.png -------------------------------------------------------------------------------- /pics/1492929553651_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1492929553651_7.png -------------------------------------------------------------------------------- /pics/1492930243286_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1492930243286_8.png -------------------------------------------------------------------------------- /pics/20150928140509757.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/20150928140509757.png -------------------------------------------------------------------------------- /pics/600px-Sharedmem.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/600px-Sharedmem.jpg -------------------------------------------------------------------------------- /pics/How-HTTPS-Works.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/How-HTTPS-Works.png -------------------------------------------------------------------------------- /pics/java-collections.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/java-collections.png -------------------------------------------------------------------------------- /pics/java-collections1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/java-collections1.png -------------------------------------------------------------------------------- /pics/linux-filesystem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/linux-filesystem.png -------------------------------------------------------------------------------- /pics/monitor-lock-rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/monitor-lock-rule.png -------------------------------------------------------------------------------- /pics/mutualssl_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/mutualssl_small.png -------------------------------------------------------------------------------- /pics/thread-join-rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/thread-join-rule.png -------------------------------------------------------------------------------- /pics/thread-start-rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/thread-start-rule.png -------------------------------------------------------------------------------- /pics/HTTP1_x_Connections.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/HTTP1_x_Connections.png -------------------------------------------------------------------------------- /pics/HowLinkedListWorks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/HowLinkedListWorks.png -------------------------------------------------------------------------------- /pics/master-slave-proxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/master-slave-proxy.png -------------------------------------------------------------------------------- /pics/network-of-networks.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/network-of-networks.gif -------------------------------------------------------------------------------- /pics/single-thread-rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/single-thread-rule.png -------------------------------------------------------------------------------- /pics/DP-Decorator-java.io.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/DP-Decorator-java.io.png -------------------------------------------------------------------------------- /pics/JVM-runtime-data-area.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/JVM-runtime-data-area.jpg -------------------------------------------------------------------------------- /pics/class_loader_hierarchy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/class_loader_hierarchy.png -------------------------------------------------------------------------------- /pics/inode_with_signatures.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/inode_with_signatures.jpg -------------------------------------------------------------------------------- /pics/volatile-variable-rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/volatile-variable-rule.png -------------------------------------------------------------------------------- /pics/7779232-1e8ed39548081a1f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7779232-1e8ed39548081a1f.png -------------------------------------------------------------------------------- /pics/7779232-96822582feb08651.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7779232-96822582feb08651.png -------------------------------------------------------------------------------- /pics/MultiNode-SpringSession.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/MultiNode-SpringSession.jpg -------------------------------------------------------------------------------- /pics/MultiNode-StickySessions.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/MultiNode-StickySessions.jpg -------------------------------------------------------------------------------- /pics/2018-05-29-15275543393037.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2018-05-29-15275543393037.jpg -------------------------------------------------------------------------------- /pics/HTTP_RequestMessageExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/HTTP_RequestMessageExample.png -------------------------------------------------------------------------------- /pics/HTTP_ResponseMessageExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/HTTP_ResponseMessageExample.png -------------------------------------------------------------------------------- /pics/JNI-Java-Native-Interface.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/JNI-Java-Native-Interface.jpg -------------------------------------------------------------------------------- /pics/2_14_microkernelArchitecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2_14_microkernelArchitecture.jpg -------------------------------------------------------------------------------- /pics/MultiNode-SessionReplication.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/MultiNode-SessionReplication.jpg -------------------------------------------------------------------------------- /pics/docker-filesystems-busyboxrw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/docker-filesystems-busyboxrw.png -------------------------------------------------------------------------------- /pics/76a49594323247f21c9b3a69945445ee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/76a49594323247f21c9b3a69945445ee.png -------------------------------------------------------------------------------- /pics/GUID_Partition_Table_Scheme.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/GUID_Partition_Table_Scheme.svg.png -------------------------------------------------------------------------------- /pics/LOun2W9134NxVugmbJPp15d4LalxC4O.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/LOun2W9134NxVugmbJPp15d4LalxC4O.png -------------------------------------------------------------------------------- /pics/NP4z3i8m38Ntd28NQ4_0KCJ2q044Oez.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/NP4z3i8m38Ntd28NQ4_0KCJ2q044Oez.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuU8goIp9ILK8IatCoQn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuU8goIp9ILK8IatCoQn.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuU8goIp9ILLmB2xEJyv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuU8goIp9ILLmB2xEJyv.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuU8goIp9ILLmJ4ylIar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuU8goIp9ILLmJ4ylIar.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuU8goIp9ILLmJyrBBKh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuU8goIp9ILLmJyrBBKh.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuU8goIp9ILLmpiyjo2_.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuU8goIp9ILLmpiyjo2_.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuUBAp2j9BKfBJ4vLy0G.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuUBAp2j9BKfBJ4vLy0G.png -------------------------------------------------------------------------------- /pics/SoWkIImgAStDuUBAp2j9BKfBJ4vLy4q.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/SoWkIImgAStDuUBAp2j9BKfBJ4vLy4q.png -------------------------------------------------------------------------------- /pics/VP4n3i8m34Ntd28NQ4_0KCJ2q044Oez.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/VP4n3i8m34Ntd28NQ4_0KCJ2q044Oez.png -------------------------------------------------------------------------------- /pics/VP6n3i8W48Ptde8NQ9_0eSR5eOD6uqx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/VP6n3i8W48Ptde8NQ9_0eSR5eOD6uqx.png -------------------------------------------------------------------------------- /pics/ZnJvbT1jc2RuJnVybD15VkdkdVYyUXZ.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ZnJvbT1jc2RuJnVybD15VkdkdVYyUXZ.jpg -------------------------------------------------------------------------------- /pics/014fbc4d-d873-4a12-b160-867ddaed9807.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/014fbc4d-d873-4a12-b160-867ddaed9807.jpg -------------------------------------------------------------------------------- /pics/0157d362-98dd-4e51-ac26-00ecb76beb3e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0157d362-98dd-4e51-ac26-00ecb76beb3e.png -------------------------------------------------------------------------------- /pics/026d3cb4-67f7-4a83-884d-8032f57ec446.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/026d3cb4-67f7-4a83-884d-8032f57ec446.png -------------------------------------------------------------------------------- /pics/02986f62-c641-44a8-a55f-983581490e0c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/02986f62-c641-44a8-a55f-983581490e0c.png -------------------------------------------------------------------------------- /pics/037c3a0b-332d-434d-a374-f343ef72c8e1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/037c3a0b-332d-434d-a374-f343ef72c8e1.jpg -------------------------------------------------------------------------------- /pics/03f47940-3843-4b51-9e42-5dcaff44858b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/03f47940-3843-4b51-9e42-5dcaff44858b.jpg -------------------------------------------------------------------------------- /pics/042cf928-3c8e-4815-ae9c-f2780202c68f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/042cf928-3c8e-4815-ae9c-f2780202c68f.png -------------------------------------------------------------------------------- /pics/04f41228-375d-4b7d-bfef-738c5a7c8f07.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/04f41228-375d-4b7d-bfef-738c5a7c8f07.jpg -------------------------------------------------------------------------------- /pics/051e436c-0e46-4c59-8f67-52d89d656182.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/051e436c-0e46-4c59-8f67-52d89d656182.png -------------------------------------------------------------------------------- /pics/05907ab4-42c5-4b5e-9388-6617f6c97bea.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/05907ab4-42c5-4b5e-9388-6617f6c97bea.jpg -------------------------------------------------------------------------------- /pics/061c29ce-e2ed-425a-911e-56fbba1efce3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/061c29ce-e2ed-425a-911e-56fbba1efce3.jpg -------------------------------------------------------------------------------- /pics/061c88c1-572f-424f-b580-9cbce903a3fe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/061c88c1-572f-424f-b580-9cbce903a3fe.png -------------------------------------------------------------------------------- /pics/06976908-98ab-46e9-a632-f0c2760ec46c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/06976908-98ab-46e9-a632-f0c2760ec46c.png -------------------------------------------------------------------------------- /pics/075e1977-7846-4928-96c8-bb5b0268693c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/075e1977-7846-4928-96c8-bb5b0268693c.jpg -------------------------------------------------------------------------------- /pics/07717718-1230-4347-aa18-2041c315e670.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/07717718-1230-4347-aa18-2041c315e670.jpg -------------------------------------------------------------------------------- /pics/07903a31-0fb3-45fc-86f5-26f0b28fa4e7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/07903a31-0fb3-45fc-86f5-26f0b28fa4e7.png -------------------------------------------------------------------------------- /pics/08427d38-8df1-49a1-8990-e0ce5ee36ca2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/08427d38-8df1-49a1-8990-e0ce5ee36ca2.png -------------------------------------------------------------------------------- /pics/0889c0b4-07b4-45fc-873c-e0e16b97f67d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0889c0b4-07b4-45fc-873c-e0e16b97f67d.png -------------------------------------------------------------------------------- /pics/08f32fd3-f736-4a67-81ca-295b2a7972f2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/08f32fd3-f736-4a67-81ca-295b2a7972f2.jpg -------------------------------------------------------------------------------- /pics/09b52bcb-88ba-4e36-8244-b375f16ad116.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/09b52bcb-88ba-4e36-8244-b375f16ad116.jpg -------------------------------------------------------------------------------- /pics/09e6e8d4-4d83-4949-b908-6d6b4c2fd064.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/09e6e8d4-4d83-4949-b908-6d6b4c2fd064.png -------------------------------------------------------------------------------- /pics/0a9f4125-b6ab-4e94-a807-fd7070ae726a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0a9f4125-b6ab-4e94-a807-fd7070ae726a.png -------------------------------------------------------------------------------- /pics/0aaf4630-d2a2-4783-b3f7-a2b6a7dfc01b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0aaf4630-d2a2-4783-b3f7-a2b6a7dfc01b.jpg -------------------------------------------------------------------------------- /pics/0b587744-c0a8-46f2-8d72-e8f070d67b4b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0b587744-c0a8-46f2-8d72-e8f070d67b4b.jpg -------------------------------------------------------------------------------- /pics/0c55e11c-d3ce-4cd8-b139-028aea6f40e3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0c55e11c-d3ce-4cd8-b139-028aea6f40e3.png -------------------------------------------------------------------------------- /pics/0df5d84c-e7ca-4e3a-a688-bb8e68894467.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0df5d84c-e7ca-4e3a-a688-bb8e68894467.png -------------------------------------------------------------------------------- /pics/0e34263d-7287-4ffe-a716-37c53d1a2526.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0e34263d-7287-4ffe-a716-37c53d1a2526.png -------------------------------------------------------------------------------- /pics/0ea37ee2-c224-4c79-b895-e131c6805c40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0ea37ee2-c224-4c79-b895-e131c6805c40.png -------------------------------------------------------------------------------- /pics/0ee0f61b-c782-441e-bf34-665650198ae0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0ee0f61b-c782-441e-bf34-665650198ae0.jpg -------------------------------------------------------------------------------- /pics/0f373947-c68f-45b4-a59e-086154745ac5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0f373947-c68f-45b4-a59e-086154745ac5.png -------------------------------------------------------------------------------- /pics/0f754c1d-b5cb-48cd-90e0-4a86034290a1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/0f754c1d-b5cb-48cd-90e0-4a86034290a1.png -------------------------------------------------------------------------------- /pics/107a6a2b-f15b-4cad-bced-b7fb95258c9c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/107a6a2b-f15b-4cad-bced-b7fb95258c9c.png -------------------------------------------------------------------------------- /pics/10bdf7bf-0daa-4a26-b927-f142b3f8e72b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/10bdf7bf-0daa-4a26-b927-f142b3f8e72b.png -------------------------------------------------------------------------------- /pics/10f5e35b-1c71-4717-9e80-47f259702642.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/10f5e35b-1c71-4717-9e80-47f259702642.jpg -------------------------------------------------------------------------------- /pics/11236498-1417-46ce-a1b0-e10054256955.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/11236498-1417-46ce-a1b0-e10054256955.png -------------------------------------------------------------------------------- /pics/1164a71f-413d-494a-9cc8-679fb6a2613d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1164a71f-413d-494a-9cc8-679fb6a2613d.jpg -------------------------------------------------------------------------------- /pics/1202b2d6-9469-4251-bd47-ca6034fb6116.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1202b2d6-9469-4251-bd47-ca6034fb6116.png -------------------------------------------------------------------------------- /pics/123bdf81-1ef5-48a9-a08c-2db97057b4d2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/123bdf81-1ef5-48a9-a08c-2db97057b4d2.png -------------------------------------------------------------------------------- /pics/12f958ee-ea02-481a-86ae-acc24934ad80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/12f958ee-ea02-481a-86ae-acc24934ad80.png -------------------------------------------------------------------------------- /pics/137c593d-0a9e-47b8-a9e6-b71f540b82dd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/137c593d-0a9e-47b8-a9e6-b71f540b82dd.png -------------------------------------------------------------------------------- /pics/13b0940e-d1d7-4b17-af4f-b70cb0a75e08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/13b0940e-d1d7-4b17-af4f-b70cb0a75e08.png -------------------------------------------------------------------------------- /pics/14cfe8d4-e31b-49e0-ac6a-6f4f7aa06ab6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/14cfe8d4-e31b-49e0-ac6a-6f4f7aa06ab6.png -------------------------------------------------------------------------------- /pics/15313ed8-a520-4799-a300-2b6b36be314f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/15313ed8-a520-4799-a300-2b6b36be314f.jpg -------------------------------------------------------------------------------- /pics/1556770b-8c01-4681-af10-46f1df69202c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1556770b-8c01-4681-af10-46f1df69202c.jpg -------------------------------------------------------------------------------- /pics/1582217a-ed46-4cac-811e-90d13a65163b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1582217a-ed46-4cac-811e-90d13a65163b.png -------------------------------------------------------------------------------- /pics/15b45dc6-27aa-4519-9194-f4acfa2b077f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/15b45dc6-27aa-4519-9194-f4acfa2b077f.jpg -------------------------------------------------------------------------------- /pics/168e893c-e4a0-4ba4-b81f-9d993483abd0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/168e893c-e4a0-4ba4-b81f-9d993483abd0.jpg -------------------------------------------------------------------------------- /pics/17976404-95f5-480e-9cb4-250e6aa1d55f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/17976404-95f5-480e-9cb4-250e6aa1d55f.png -------------------------------------------------------------------------------- /pics/1818e141-8700-4026-99f7-900a545875f5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1818e141-8700-4026-99f7-900a545875f5.png -------------------------------------------------------------------------------- /pics/185b9c49-4c13-4241-a848-fbff85c03a64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/185b9c49-4c13-4241-a848-fbff85c03a64.png -------------------------------------------------------------------------------- /pics/1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg -------------------------------------------------------------------------------- /pics/1a2f2998-d0da-41c8-8222-1fd95083a66b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1a2f2998-d0da-41c8-8222-1fd95083a66b.png -------------------------------------------------------------------------------- /pics/1a851e90-0d5c-4d4f-ac54-34c20ecfb903.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1a851e90-0d5c-4d4f-ac54-34c20ecfb903.jpg -------------------------------------------------------------------------------- /pics/1a9977e4-2f5c-49a6-aec9-f3027c9f46a7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1a9977e4-2f5c-49a6-aec9-f3027c9f46a7.png -------------------------------------------------------------------------------- /pics/1ab49e39-012b-4383-8284-26570987e3c4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1ab49e39-012b-4383-8284-26570987e3c4.jpg -------------------------------------------------------------------------------- /pics/1b7f180e-7fee-4eaf-8ebb-164b68ae2b29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1b7f180e-7fee-4eaf-8ebb-164b68ae2b29.png -------------------------------------------------------------------------------- /pics/1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1be8b4b0-cc7a-44d7-9c77-85be37b76f7d.png -------------------------------------------------------------------------------- /pics/1bea398f-17a7-4f67-a90b-9e2d243eaa9a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1bea398f-17a7-4f67-a90b-9e2d243eaa9a.png -------------------------------------------------------------------------------- /pics/1bfa3118-f3cd-4480-a950-cf6d646015db.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1bfa3118-f3cd-4480-a950-cf6d646015db.png -------------------------------------------------------------------------------- /pics/1c4e8185-8153-46b6-bd5a-288b15feeae6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1c4e8185-8153-46b6-bd5a-288b15feeae6.png -------------------------------------------------------------------------------- /pics/1ca52246-c443-48ae-b1f8-1cafc09ec75c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1ca52246-c443-48ae-b1f8-1cafc09ec75c.png -------------------------------------------------------------------------------- /pics/1ee5f0a5-b8df-43b9-95ab-c516c54ec797.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1ee5f0a5-b8df-43b9-95ab-c516c54ec797.jpg -------------------------------------------------------------------------------- /pics/1f039a45-6b91-4f31-a2c2-6c63eb8bdb56.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1f039a45-6b91-4f31-a2c2-6c63eb8bdb56.png -------------------------------------------------------------------------------- /pics/1f080e53-4758-406c-bb5f-dbedf89b63ce.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1f080e53-4758-406c-bb5f-dbedf89b63ce.jpg -------------------------------------------------------------------------------- /pics/1f4a7f10-52b2-4bd7-a67d-a9581d66dc62.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1f4a7f10-52b2-4bd7-a67d-a9581d66dc62.jpg -------------------------------------------------------------------------------- /pics/1fc969e4-0e7c-441b-b53c-01950d2f2be5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/1fc969e4-0e7c-441b-b53c-01950d2f2be5.png -------------------------------------------------------------------------------- /pics/2017511e-22f0-4d74-873d-1261b71cf5a4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2017511e-22f0-4d74-873d-1261b71cf5a4.png -------------------------------------------------------------------------------- /pics/207c1801-2335-4b1b-b65c-126a0ba966cb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/207c1801-2335-4b1b-b65c-126a0ba966cb.png -------------------------------------------------------------------------------- /pics/21041ec2-babb-483f-bf47-8b8148eec162.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/21041ec2-babb-483f-bf47-8b8148eec162.png -------------------------------------------------------------------------------- /pics/211c60d4-75ca-4acd-8a4f-171458ed58b4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/211c60d4-75ca-4acd-8a4f-171458ed58b4.jpg -------------------------------------------------------------------------------- /pics/220790c6-4377-4a2e-8686-58398afc8a18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/220790c6-4377-4a2e-8686-58398afc8a18.png -------------------------------------------------------------------------------- /pics/22de0538-7c6e-4365-bd3b-8ce3c5900216.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/22de0538-7c6e-4365-bd3b-8ce3c5900216.png -------------------------------------------------------------------------------- /pics/22fda4ae-4dd5-489d-ab10-9ebfdad22ae0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/22fda4ae-4dd5-489d-ab10-9ebfdad22ae0.jpg -------------------------------------------------------------------------------- /pics/23ba890e-e11c-45e2-a20c-64d217f83430.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/23ba890e-e11c-45e2-a20c-64d217f83430.png -------------------------------------------------------------------------------- /pics/245fd2fb-209c-4ad5-bc5e-eb5664966a0e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/245fd2fb-209c-4ad5-bc5e-eb5664966a0e.jpg -------------------------------------------------------------------------------- /pics/249f3bb1-feee-4805-a259-a72699d638ca.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/249f3bb1-feee-4805-a259-a72699d638ca.jpg -------------------------------------------------------------------------------- /pics/25d6d3d4-4726-47b1-a9cb-3316d1ff5dd5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/25d6d3d4-4726-47b1-a9cb-3316d1ff5dd5.png -------------------------------------------------------------------------------- /pics/265a355d-aead-48aa-b455-f33b62fe729f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/265a355d-aead-48aa-b455-f33b62fe729f.png -------------------------------------------------------------------------------- /pics/2719067e-b299-4639-9065-bed6729dbf0b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2719067e-b299-4639-9065-bed6729dbf0b.png -------------------------------------------------------------------------------- /pics/271ce08f-c124-475f-b490-be44fedc6d2e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/271ce08f-c124-475f-b490-be44fedc6d2e.png -------------------------------------------------------------------------------- /pics/2766d04f-7dad-42e4-99d1-60682c9d5c61.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2766d04f-7dad-42e4-99d1-60682c9d5c61.jpg -------------------------------------------------------------------------------- /pics/276c31df-3b28-4ac2-b006-1e80fc86a64f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/276c31df-3b28-4ac2-b006-1e80fc86a64f.jpg -------------------------------------------------------------------------------- /pics/278fe431-af88-4a95-a895-9c3b80117de3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/278fe431-af88-4a95-a895-9c3b80117de3.jpg -------------------------------------------------------------------------------- /pics/27cd6f0c-f581-45da-b8c9-fed026830560.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/27cd6f0c-f581-45da-b8c9-fed026830560.png -------------------------------------------------------------------------------- /pics/27ff9548-edb6-4465-92c8-7e6386e0b185.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/27ff9548-edb6-4465-92c8-7e6386e0b185.png -------------------------------------------------------------------------------- /pics/280f7728-594f-4811-a03a-fa8d32c013da.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/280f7728-594f-4811-a03a-fa8d32c013da.png -------------------------------------------------------------------------------- /pics/2858f8ad-aedb-45a5-a706-e98c96d690fa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2858f8ad-aedb-45a5-a706-e98c96d690fa.jpg -------------------------------------------------------------------------------- /pics/2861e923-4862-4526-881c-15529279d49c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2861e923-4862-4526-881c-15529279d49c.png -------------------------------------------------------------------------------- /pics/28ab96b4-82ea-4d99-99fb-b320f60d0a58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/28ab96b4-82ea-4d99-99fb-b320f60d0a58.png -------------------------------------------------------------------------------- /pics/292b4a35-4507-4256-84ff-c218f108ee31.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/292b4a35-4507-4256-84ff-c218f108ee31.jpg -------------------------------------------------------------------------------- /pics/293d2af9-de1d-403e-bed0-85d029383528.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/293d2af9-de1d-403e-bed0-85d029383528.png -------------------------------------------------------------------------------- /pics/2991c772-fb1c-4051-a9c7-932b68e76bd7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2991c772-fb1c-4051-a9c7-932b68e76bd7.jpg -------------------------------------------------------------------------------- /pics/2a842a14-e4ab-4f37-83fa-f82c206fe426.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2a842a14-e4ab-4f37-83fa-f82c206fe426.png -------------------------------------------------------------------------------- /pics/2a8e1442-2381-4439-a83f-0312c8678b1f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2a8e1442-2381-4439-a83f-0312c8678b1f.png -------------------------------------------------------------------------------- /pics/2ac50b81-d92a-4401-b9ec-f2113ecc3076.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2ac50b81-d92a-4401-b9ec-f2113ecc3076.png -------------------------------------------------------------------------------- /pics/2ad244f5-939c-49fa-9385-69bc688677ab.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2ad244f5-939c-49fa-9385-69bc688677ab.jpg -------------------------------------------------------------------------------- /pics/2bcc58ad-bf7f-485c-89b5-e7cafc211ce2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2bcc58ad-bf7f-485c-89b5-e7cafc211ce2.jpg -------------------------------------------------------------------------------- /pics/2bf2fd8f-5ade-48ba-a2b3-74195ac77c4b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2bf2fd8f-5ade-48ba-a2b3-74195ac77c4b.png -------------------------------------------------------------------------------- /pics/2c4556e4-0751-4377-ab08-e7b89d697ca7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2c4556e4-0751-4377-ab08-e7b89d697ca7.png -------------------------------------------------------------------------------- /pics/2c8a7a87-1bf1-4d66-9ba9-225a1add0a51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2c8a7a87-1bf1-4d66-9ba9-225a1add0a51.png -------------------------------------------------------------------------------- /pics/2d09a847-b854-439c-9198-b29c65810944.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2d09a847-b854-439c-9198-b29c65810944.png -------------------------------------------------------------------------------- /pics/2e6c72f5-3b8e-4e32-b87b-9491322628fe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/2e6c72f5-3b8e-4e32-b87b-9491322628fe.png -------------------------------------------------------------------------------- /pics/30210b86-472d-4574-abb6-b74898cc17a4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/30210b86-472d-4574-abb6-b74898cc17a4.jpg -------------------------------------------------------------------------------- /pics/3086c248-b552-499e-b101-9cffe5c2773e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3086c248-b552-499e-b101-9cffe5c2773e.png -------------------------------------------------------------------------------- /pics/31d99967-1171-448e-8531-bccf5c14cffe.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/31d99967-1171-448e-8531-bccf5c14cffe.jpg -------------------------------------------------------------------------------- /pics/323ffd6c-8b54-4f3e-b361-555a6c8bf218.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/323ffd6c-8b54-4f3e-b361-555a6c8bf218.png -------------------------------------------------------------------------------- /pics/32b8374a-e822-4720-af0b-c0f485095ea2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/32b8374a-e822-4720-af0b-c0f485095ea2.jpg -------------------------------------------------------------------------------- /pics/33ac2b23-cb85-4e99-bc41-b7b7199fad1c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/33ac2b23-cb85-4e99-bc41-b7b7199fad1c.png -------------------------------------------------------------------------------- /pics/348bc2db-582e-4aca-9f88-38c40e9a0e69.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/348bc2db-582e-4aca-9f88-38c40e9a0e69.png -------------------------------------------------------------------------------- /pics/35650b4b-efa1-49ba-9680-19837027cfc9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/35650b4b-efa1-49ba-9680-19837027cfc9.png -------------------------------------------------------------------------------- /pics/3646544a-cb57-451d-9e03-d3c4f5e4434a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3646544a-cb57-451d-9e03-d3c4f5e4434a.png -------------------------------------------------------------------------------- /pics/37a72755-4890-4b42-9eab-b0084e0c54d9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/37a72755-4890-4b42-9eab-b0084e0c54d9.png -------------------------------------------------------------------------------- /pics/37e79a32-95a9-4503-bdb1-159527e628b8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/37e79a32-95a9-4503-bdb1-159527e628b8.png -------------------------------------------------------------------------------- /pics/386cd64f-7a9d-40e6-8c55-22b90ee2d258.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/386cd64f-7a9d-40e6-8c55-22b90ee2d258.png -------------------------------------------------------------------------------- /pics/390c913b-5f31-444f-bbdb-2b88b688e7ce.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/390c913b-5f31-444f-bbdb-2b88b688e7ce.jpg -------------------------------------------------------------------------------- /pics/3939369b-3a4a-48a0-b9eb-3efae26dd400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3939369b-3a4a-48a0-b9eb-3efae26dd400.png -------------------------------------------------------------------------------- /pics/395a9e83-b1a1-4a1d-b170-d081e7bb5bab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/395a9e83-b1a1-4a1d-b170-d081e7bb5bab.png -------------------------------------------------------------------------------- /pics/396be981-3f2c-4fd9-8101-dbf9c841504b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/396be981-3f2c-4fd9-8101-dbf9c841504b.jpg -------------------------------------------------------------------------------- /pics/39ccb299-ee99-4dd1-b8b4-2f9ec9495cb4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/39ccb299-ee99-4dd1-b8b4-2f9ec9495cb4.png -------------------------------------------------------------------------------- /pics/3b0d1aa8-d0e0-46c2-8fd1-736bf08a11aa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3b0d1aa8-d0e0-46c2-8fd1-736bf08a11aa.jpg -------------------------------------------------------------------------------- /pics/3b49dd67-2c40-4b81-8ad2-7bbb1fe2fcbd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3b49dd67-2c40-4b81-8ad2-7bbb1fe2fcbd.png -------------------------------------------------------------------------------- /pics/3ca58a41-8794-49c1-992e-de5d579a50d1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3ca58a41-8794-49c1-992e-de5d579a50d1.png -------------------------------------------------------------------------------- /pics/3cd630ea-017c-488d-ad1d-732b4efeddf5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3cd630ea-017c-488d-ad1d-732b4efeddf5.png -------------------------------------------------------------------------------- /pics/3d5b828e-5c4d-48d8-a440-281e4a8e1c92.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3d5b828e-5c4d-48d8-a440-281e4a8e1c92.png -------------------------------------------------------------------------------- /pics/3f5bba4b-7813-4aea-b578-970c7e3f6bf3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3f5bba4b-7813-4aea-b578-970c7e3f6bf3.jpg -------------------------------------------------------------------------------- /pics/3fb5b255-b791-45b6-8754-325c8741855a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3fb5b255-b791-45b6-8754-325c8741855a.png -------------------------------------------------------------------------------- /pics/3fdfc89d-719e-4d93-b518-29fa612b3b18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3fdfc89d-719e-4d93-b518-29fa612b3b18.png -------------------------------------------------------------------------------- /pics/3ff4f00a-2321-48fd-95f4-ce6001332151.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/3ff4f00a-2321-48fd-95f4-ce6001332151.png -------------------------------------------------------------------------------- /pics/41026c79-dfc1-40f7-85ae-062910fd272b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/41026c79-dfc1-40f7-85ae-062910fd272b.png -------------------------------------------------------------------------------- /pics/41392d76-dd1d-4712-85d9-e8bb46b04a2d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/41392d76-dd1d-4712-85d9-e8bb46b04a2d.png -------------------------------------------------------------------------------- /pics/423f2a40-bee1-488e-b460-8e76c48ee560.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/423f2a40-bee1-488e-b460-8e76c48ee560.png -------------------------------------------------------------------------------- /pics/426df589-6f97-4622-b74d-4a81fcb1da8e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/426df589-6f97-4622-b74d-4a81fcb1da8e.png -------------------------------------------------------------------------------- /pics/43f2cafa-3568-4a89-a895-4725666b94a6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/43f2cafa-3568-4a89-a895-4725666b94a6.png -------------------------------------------------------------------------------- /pics/44e4a7ab-215c-41a1-8e34-f55f6c09e517.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/44e4a7ab-215c-41a1-8e34-f55f6c09e517.jpg -------------------------------------------------------------------------------- /pics/44edefb7-4b58-4519-b8ee-4aca01697b78.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/44edefb7-4b58-4519-b8ee-4aca01697b78.jpg -------------------------------------------------------------------------------- /pics/450px-HTTP_persistent_connection.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/450px-HTTP_persistent_connection.svg.png -------------------------------------------------------------------------------- /pics/4583e24f-424b-4d50-8a14-2c38a1827d4a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4583e24f-424b-4d50-8a14-2c38a1827d4a.png -------------------------------------------------------------------------------- /pics/45e0e0bf-386d-4280-a341-a0b9496c7674.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/45e0e0bf-386d-4280-a341-a0b9496c7674.png -------------------------------------------------------------------------------- /pics/4628274c-25b6-4053-97cf-d1239b44c43d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4628274c-25b6-4053-97cf-d1239b44c43d.png -------------------------------------------------------------------------------- /pics/46cec213-3048-4a80-aded-fdd577542801.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/46cec213-3048-4a80-aded-fdd577542801.jpg -------------------------------------------------------------------------------- /pics/46f66e88-e65a-4ad0-a060-3c63fe22947c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/46f66e88-e65a-4ad0-a060-3c63fe22947c.png -------------------------------------------------------------------------------- /pics/47358f87-bc4c-496f-9a90-8d696de94cee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/47358f87-bc4c-496f-9a90-8d696de94cee.png -------------------------------------------------------------------------------- /pics/47d98583-8bb0-45cc-812d-47eefa0a4a40.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/47d98583-8bb0-45cc-812d-47eefa0a4a40.jpg -------------------------------------------------------------------------------- /pics/485fdf34-ccf8-4185-97c6-17374ee719a0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/485fdf34-ccf8-4185-97c6-17374ee719a0.png -------------------------------------------------------------------------------- /pics/4885d0bc-1441-460f-bd75-a2088aa7f2d4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4885d0bc-1441-460f-bd75-a2088aa7f2d4.png -------------------------------------------------------------------------------- /pics/48a934ff-a29b-434c-8e1d-8c8ec20cb91d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/48a934ff-a29b-434c-8e1d-8c8ec20cb91d.png -------------------------------------------------------------------------------- /pics/48f8f98e-8dfd-450d-8b5b-df4688f0d377.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/48f8f98e-8dfd-450d-8b5b-df4688f0d377.jpg -------------------------------------------------------------------------------- /pics/49495c95-52e5-4c9a-b27b-92cf235ff5ec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/49495c95-52e5-4c9a-b27b-92cf235ff5ec.png -------------------------------------------------------------------------------- /pics/49d6de7b-0d0d-425c-9e49-a1559dc23b10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/49d6de7b-0d0d-425c-9e49-a1559dc23b10.png -------------------------------------------------------------------------------- /pics/4bb7ed45-ec14-4d31-9da4-94024d9d3b05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4bb7ed45-ec14-4d31-9da4-94024d9d3b05.png -------------------------------------------------------------------------------- /pics/4cf711a8-7ab2-4152-b85c-d5c226733807.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4cf711a8-7ab2-4152-b85c-d5c226733807.png -------------------------------------------------------------------------------- /pics/4d741402-344d-4b7c-be01-e57184bcad0e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4d741402-344d-4b7c-be01-e57184bcad0e.png -------------------------------------------------------------------------------- /pics/4d930e22-f493-49ae-8dff-ea21cd6895dc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4d930e22-f493-49ae-8dff-ea21cd6895dc.png -------------------------------------------------------------------------------- /pics/4dc08713-f6fe-424c-a24c-ad5a993a941d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4dc08713-f6fe-424c-a24c-ad5a993a941d.png -------------------------------------------------------------------------------- /pics/4e2485e4-34bd-4967-9f02-0c093b797aaa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4e2485e4-34bd-4967-9f02-0c093b797aaa.png -------------------------------------------------------------------------------- /pics/4e760981-a0c5-4dbf-9fbf-ce963e0629fb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4e760981-a0c5-4dbf-9fbf-ce963e0629fb.png -------------------------------------------------------------------------------- /pics/4f48e806-f90b-4c09-a55f-ac0cd641c047.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4f48e806-f90b-4c09-a55f-ac0cd641c047.png -------------------------------------------------------------------------------- /pics/4fc032e0-ac6f-4b42-9182-ee104a25e7a1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4fc032e0-ac6f-4b42-9182-ee104a25e7a1.png -------------------------------------------------------------------------------- /pics/4ff355cf-9a7f-4468-af43-e5b02038facc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/4ff355cf-9a7f-4468-af43-e5b02038facc.jpg -------------------------------------------------------------------------------- /pics/50831a6f-2777-46ea-a571-29f23c85cc21.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/50831a6f-2777-46ea-a571-29f23c85cc21.jpg -------------------------------------------------------------------------------- /pics/50d38e84-238f-4081-8876-14ef6d7938b5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/50d38e84-238f-4081-8876-14ef6d7938b5.jpg -------------------------------------------------------------------------------- /pics/5158bc2f-83a6-4351-817e-c9b07f955d76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5158bc2f-83a6-4351-817e-c9b07f955d76.png -------------------------------------------------------------------------------- /pics/518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/518f16f2-a9f7-499a-98e1-f1dbb37b5a9a.png -------------------------------------------------------------------------------- /pics/51e2ed95-65b8-4ae9-8af3-65602d452a25.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/51e2ed95-65b8-4ae9-8af3-65602d452a25.jpg -------------------------------------------------------------------------------- /pics/51fb761d-8ce0-4472-92ff-2f227ac7888a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/51fb761d-8ce0-4472-92ff-2f227ac7888a.png -------------------------------------------------------------------------------- /pics/5292faa6-0141-4638-bf0f-bb95b081dcba.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5292faa6-0141-4638-bf0f-bb95b081dcba.jpg -------------------------------------------------------------------------------- /pics/52e1af6f-3a7a-4bee-aa8f-fcb5dacebe40.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/52e1af6f-3a7a-4bee-aa8f-fcb5dacebe40.jpg -------------------------------------------------------------------------------- /pics/5341d726-ffde-4d2a-a000-46597bcc9c5a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5341d726-ffde-4d2a-a000-46597bcc9c5a.png -------------------------------------------------------------------------------- /pics/5359cbf5-5a79-4874-9b17-f23c53c2cb80.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5359cbf5-5a79-4874-9b17-f23c53c2cb80.jpg -------------------------------------------------------------------------------- /pics/536c6dfd-305a-4b95-b12c-28ca5e8aa043.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/536c6dfd-305a-4b95-b12c-28ca5e8aa043.png -------------------------------------------------------------------------------- /pics/53cd9ade-b0a6-4399-b4de-7f1fbd06cdfb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/53cd9ade-b0a6-4399-b4de-7f1fbd06cdfb.png -------------------------------------------------------------------------------- /pics/540631a4-6018-40a5-aed7-081e2eeeaeea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/540631a4-6018-40a5-aed7-081e2eeeaeea.png -------------------------------------------------------------------------------- /pics/54cb3f21-485b-4159-8bf5-dcde1c4d4c36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/54cb3f21-485b-4159-8bf5-dcde1c4d4c36.png -------------------------------------------------------------------------------- /pics/54f1e052-0596-4b5e-833c-e80d75bf3f9b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/54f1e052-0596-4b5e-833c-e80d75bf3f9b.png -------------------------------------------------------------------------------- /pics/55dc4e84-573d-4c13-a765-52ed1dd251f9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/55dc4e84-573d-4c13-a765-52ed1dd251f9.png -------------------------------------------------------------------------------- /pics/562f2844-d77c-40e0-887a-28a7128abd42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/562f2844-d77c-40e0-887a-28a7128abd42.png -------------------------------------------------------------------------------- /pics/58e57a21-6b6b-40b6-af85-956dd4e0f55a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/58e57a21-6b6b-40b6-af85-956dd4e0f55a.jpg -------------------------------------------------------------------------------- /pics/5930aeb8-847d-4e9f-a168-9334d7dec744.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5930aeb8-847d-4e9f-a168-9334d7dec744.png -------------------------------------------------------------------------------- /pics/5942debd-fc00-477a-b390-7c5692cc8070.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5942debd-fc00-477a-b390-7c5692cc8070.jpg -------------------------------------------------------------------------------- /pics/5999e5de-7c16-4b52-b3aa-6dc7b58c7894.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5999e5de-7c16-4b52-b3aa-6dc7b58c7894.png -------------------------------------------------------------------------------- /pics/5aa82b89-f266-44da-887d-18f31f01d8ef.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5aa82b89-f266-44da-887d-18f31f01d8ef.png -------------------------------------------------------------------------------- /pics/5aac64d3-2c7b-4f32-9e9a-1df2186f588b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5aac64d3-2c7b-4f32-9e9a-1df2186f588b.png -------------------------------------------------------------------------------- /pics/5acf7550-86c5-4c5b-b912-8ce70ef9c34e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5acf7550-86c5-4c5b-b912-8ce70ef9c34e.png -------------------------------------------------------------------------------- /pics/5b910141-08b6-442d-a4bc-a1608458c636.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5b910141-08b6-442d-a4bc-a1608458c636.png -------------------------------------------------------------------------------- /pics/5c638d59-d4ae-4ba4-ad44-80bdc30f38dd.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5c638d59-d4ae-4ba4-ad44-80bdc30f38dd.jpg -------------------------------------------------------------------------------- /pics/5d4a5181-65fb-4bf2-a9c6-899cab534b44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5d4a5181-65fb-4bf2-a9c6-899cab534b44.png -------------------------------------------------------------------------------- /pics/5e8d3c04-d93b-48a7-875e-41ababed00e0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5e8d3c04-d93b-48a7-875e-41ababed00e0.jpg -------------------------------------------------------------------------------- /pics/5e9b10f3-9504-4483-9667-d4770adebf9f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5e9b10f3-9504-4483-9667-d4770adebf9f.png -------------------------------------------------------------------------------- /pics/5ed71283-a070-4b21-85ae-f2cbfd6ba6e1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5ed71283-a070-4b21-85ae-f2cbfd6ba6e1.jpg -------------------------------------------------------------------------------- /pics/5f5ef0b6-98ea-497c-a007-f6c55288eab1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5f5ef0b6-98ea-497c-a007-f6c55288eab1.png -------------------------------------------------------------------------------- /pics/5f96e565-0693-47df-80f1-29e4271057b7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/5f96e565-0693-47df-80f1-29e4271057b7.png -------------------------------------------------------------------------------- /pics/600e9c75-5033-4dad-ae2b-930957db638e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/600e9c75-5033-4dad-ae2b-930957db638e.png -------------------------------------------------------------------------------- /pics/6019b2db-bc3e-4408-b6d8-96025f4481d6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/6019b2db-bc3e-4408-b6d8-96025f4481d6.png -------------------------------------------------------------------------------- /pics/61942711-45a0-4e11-bbc9-434e31436f33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/61942711-45a0-4e11-bbc9-434e31436f33.png -------------------------------------------------------------------------------- /pics/62e0dd4f-44c3-43ee-bb6e-fedb9e068519.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/62e0dd4f-44c3-43ee-bb6e-fedb9e068519.png -------------------------------------------------------------------------------- /pics/62e77997-6957-4b68-8d12-bfd609bb2c68.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/62e77997-6957-4b68-8d12-bfd609bb2c68.jpg -------------------------------------------------------------------------------- /pics/63c2909f-0c5f-496f-9fe5-ee9176b31aba.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/63c2909f-0c5f-496f-9fe5-ee9176b31aba.jpg -------------------------------------------------------------------------------- /pics/63cd5b50-d6d8-4df6-8912-ef4a1dd5ba13.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/63cd5b50-d6d8-4df6-8912-ef4a1dd5ba13.jpg -------------------------------------------------------------------------------- /pics/6539b9a4-2b24-4d10-8c94-2eb5aba1e296.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/6539b9a4-2b24-4d10-8c94-2eb5aba1e296.png -------------------------------------------------------------------------------- /pics/654acfed-a6a5-4fc7-8f40-3fdcae57bae8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/654acfed-a6a5-4fc7-8f40-3fdcae57bae8.jpg -------------------------------------------------------------------------------- /pics/658fc5e7-79c0-4247-9445-d69bf194c539.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/658fc5e7-79c0-4247-9445-d69bf194c539.png -------------------------------------------------------------------------------- /pics/66192382-558b-4b05-a35d-ac4a2b1a9811.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/66192382-558b-4b05-a35d-ac4a2b1a9811.jpg -------------------------------------------------------------------------------- /pics/66402828-fb2b-418f-83f6-82153491bcfe.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/66402828-fb2b-418f-83f6-82153491bcfe.jpg -------------------------------------------------------------------------------- /pics/6675d713-8b59-4067-ad16-fdd538d4bb43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/6675d713-8b59-4067-ad16-fdd538d4bb43.png -------------------------------------------------------------------------------- /pics/6729baa0-57d7-4817-b3aa-518cbccf824c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/6729baa0-57d7-4817-b3aa-518cbccf824c.jpg -------------------------------------------------------------------------------- /pics/67bf5487-c45d-49b6-b9c0-a058d8c68902.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/67bf5487-c45d-49b6-b9c0-a058d8c68902.png -------------------------------------------------------------------------------- /pics/685a692f-8f76-4cac-baac-b68e2df9a30f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/685a692f-8f76-4cac-baac-b68e2df9a30f.jpg -------------------------------------------------------------------------------- /pics/68778c1b-15ab-4826-99c0-3b4fd38cb9e9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/68778c1b-15ab-4826-99c0-3b4fd38cb9e9.png -------------------------------------------------------------------------------- /pics/688dacfe-1057-412f-b3a1-86abb5b0f914.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/688dacfe-1057-412f-b3a1-86abb5b0f914.png -------------------------------------------------------------------------------- /pics/68b110b9-76c6-4ee2-b541-4145e65adb3e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/68b110b9-76c6-4ee2-b541-4145e65adb3e.jpg -------------------------------------------------------------------------------- /pics/691f11eb-31a7-46be-9de1-61f433c4b3c7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/691f11eb-31a7-46be-9de1-61f433c4b3c7.png -------------------------------------------------------------------------------- /pics/699b4f96-d63f-46ea-a581-2b3d95eceb6a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/699b4f96-d63f-46ea-a581-2b3d95eceb6a.jpg -------------------------------------------------------------------------------- /pics/69f16984-a66f-4288-82e4-79b4aa43e835.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/69f16984-a66f-4288-82e4-79b4aa43e835.jpg -------------------------------------------------------------------------------- /pics/6c0f4afb-20ab-49fd-837d-8144f4e38bfd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/6c0f4afb-20ab-49fd-837d-8144f4e38bfd.png -------------------------------------------------------------------------------- /pics/6f4abf41-3728-4a6b-9b94-85eed7ca8163.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/6f4abf41-3728-4a6b-9b94-85eed7ca8163.png -------------------------------------------------------------------------------- /pics/70fa1f83-dae7-456d-b94b-ce28963b2ba1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/70fa1f83-dae7-456d-b94b-ce28963b2ba1.png -------------------------------------------------------------------------------- /pics/71363383-2d06-4c63-8b72-c01c2186707d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/71363383-2d06-4c63-8b72-c01c2186707d.png -------------------------------------------------------------------------------- /pics/71f61bc3-582d-4c27-8bdd-dc7fb135bf8f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/71f61bc3-582d-4c27-8bdd-dc7fb135bf8f.png -------------------------------------------------------------------------------- /pics/7299afd2-9114-44e6-9d5e-4025d0b2a541.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7299afd2-9114-44e6-9d5e-4025d0b2a541.png -------------------------------------------------------------------------------- /pics/72f0ff69-138d-4e54-b7ac-ebe025d978dc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/72f0ff69-138d-4e54-b7ac-ebe025d978dc.png -------------------------------------------------------------------------------- /pics/72fe492e-f1cb-4cfc-92f8-412fb3ae6fec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/72fe492e-f1cb-4cfc-92f8-412fb3ae6fec.png -------------------------------------------------------------------------------- /pics/73b73189-9e95-47e5-91d0-9378b8462e15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/73b73189-9e95-47e5-91d0-9378b8462e15.png -------------------------------------------------------------------------------- /pics/766aedd0-1b00-4065-aa2b-7d31138df84f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/766aedd0-1b00-4065-aa2b-7d31138df84f.png -------------------------------------------------------------------------------- /pics/76a25fc8-a579-4d7c-974b-7640b57fbf39.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/76a25fc8-a579-4d7c-974b-7640b57fbf39.jpg -------------------------------------------------------------------------------- /pics/76b48b4c-8999-4967-893b-832602e73285.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/76b48b4c-8999-4967-893b-832602e73285.png -------------------------------------------------------------------------------- /pics/76dc7769-1aac-4888-9bea-064f1caa8e77.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/76dc7769-1aac-4888-9bea-064f1caa8e77.jpg -------------------------------------------------------------------------------- /pics/77931a4b-72ba-4016-827d-84b9a6845a51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/77931a4b-72ba-4016-827d-84b9a6845a51.png -------------------------------------------------------------------------------- /pics/77f81379-3987-4036-8d7c-93a4dcf7b05d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/77f81379-3987-4036-8d7c-93a4dcf7b05d.jpg -------------------------------------------------------------------------------- /pics/79076335-cfae-4fe6-97b9-62e8eebbf2b9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/79076335-cfae-4fe6-97b9-62e8eebbf2b9.png -------------------------------------------------------------------------------- /pics/794239e3-4baf-4aad-92df-f02f59b2a6fe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/794239e3-4baf-4aad-92df-f02f59b2a6fe.png -------------------------------------------------------------------------------- /pics/79b12431-6d9d-4a7d-985b-1b79bc5bf5fb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/79b12431-6d9d-4a7d-985b-1b79bc5bf5fb.png -------------------------------------------------------------------------------- /pics/7a29acce-f243-4914-9f00-f2988c528412.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7a29acce-f243-4914-9f00-f2988c528412.jpg -------------------------------------------------------------------------------- /pics/7a3c6a30-c735-4edb-8115-337288a4f0f2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7a3c6a30-c735-4edb-8115-337288a4f0f2.jpg -------------------------------------------------------------------------------- /pics/7ab8ca28-2a41-4adf-9502-cc0a21e63b51.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7ab8ca28-2a41-4adf-9502-cc0a21e63b51.jpg -------------------------------------------------------------------------------- /pics/7b038838-c75b-4538-ae84-6299386704e5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7b038838-c75b-4538-ae84-6299386704e5.jpg -------------------------------------------------------------------------------- /pics/7b281b1e-0595-402b-ae35-8c91084c33c1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7b281b1e-0595-402b-ae35-8c91084c33c1.png -------------------------------------------------------------------------------- /pics/7b3efa99-d306-4982-8cfb-e7153c33aab4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7b3efa99-d306-4982-8cfb-e7153c33aab4.png -------------------------------------------------------------------------------- /pics/7b48448f-cbe3-4287-9041-f56566b9d0b4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7b48448f-cbe3-4287-9041-f56566b9d0b4.png -------------------------------------------------------------------------------- /pics/7b68b142-9489-44f6-87b0-4cb5c6431e63.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7b68b142-9489-44f6-87b0-4cb5c6431e63.jpg -------------------------------------------------------------------------------- /pics/7bd202a7-93d4-4f3a-a878-af68ae25539a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7bd202a7-93d4-4f3a-a878-af68ae25539a.png -------------------------------------------------------------------------------- /pics/7be0abf9-687c-4451-becd-626b0be7ec22.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7be0abf9-687c-4451-becd-626b0be7ec22.jpg -------------------------------------------------------------------------------- /pics/7c54de21-e2ff-402e-bc42-4037de1c1592.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7c54de21-e2ff-402e-bc42-4037de1c1592.png -------------------------------------------------------------------------------- /pics/7c98e1b6-c446-4cde-8513-5c11b9f52aea.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7c98e1b6-c446-4cde-8513-5c11b9f52aea.jpg -------------------------------------------------------------------------------- /pics/7e873b60-44dc-4911-b080-defd5b8f0b49.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7e873b60-44dc-4911-b080-defd5b8f0b49.png -------------------------------------------------------------------------------- /pics/7ec9d619-fa60-4a2b-95aa-bf1a62aad408.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7ec9d619-fa60-4a2b-95aa-bf1a62aad408.jpg -------------------------------------------------------------------------------- /pics/7f38a583-2f2e-4738-97af-510e6fb403a7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7f38a583-2f2e-4738-97af-510e6fb403a7.png -------------------------------------------------------------------------------- /pics/7f642a65-b167-4c8f-b382-8322c6322b2c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7f642a65-b167-4c8f-b382-8322c6322b2c.jpg -------------------------------------------------------------------------------- /pics/7fffa4b8-b36d-471f-ad0c-a88ee763bb76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/7fffa4b8-b36d-471f-ad0c-a88ee763bb76.png -------------------------------------------------------------------------------- /pics/8006a450-6c2f-498c-a928-c927f758b1d0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8006a450-6c2f-498c-a928-c927f758b1d0.png -------------------------------------------------------------------------------- /pics/80804f52-8815-4096-b506-48eef3eed5c6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/80804f52-8815-4096-b506-48eef3eed5c6.png -------------------------------------------------------------------------------- /pics/81538cd5-1bcf-4e31-86e5-e198df1e013b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/81538cd5-1bcf-4e31-86e5-e198df1e013b.jpg -------------------------------------------------------------------------------- /pics/8229e8e7-a183-4d29-94e6-e8d8537c6ce5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8229e8e7-a183-4d29-94e6-e8d8537c6ce5.png -------------------------------------------------------------------------------- /pics/823cdab7-3779-4e3a-a951-dc2d154e0ee6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/823cdab7-3779-4e3a-a951-dc2d154e0ee6.jpg -------------------------------------------------------------------------------- /pics/82cfda3b-b53b-4c89-9fdb-26dd2db0cd02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/82cfda3b-b53b-4c89-9fdb-26dd2db0cd02.jpg -------------------------------------------------------------------------------- /pics/83185315-793a-453a-a927-5e8d92b5c0ef.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/83185315-793a-453a-a927-5e8d92b5c0ef.jpg -------------------------------------------------------------------------------- /pics/836a4eaf-4798-4e48-b52a-a3dab9435ace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/836a4eaf-4798-4e48-b52a-a3dab9435ace.png -------------------------------------------------------------------------------- /pics/8433fbb2-c35c-45ef-831d-e3ca42aebd51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8433fbb2-c35c-45ef-831d-e3ca42aebd51.png -------------------------------------------------------------------------------- /pics/85370d54-40d1-4912-bcbe-37a2481c861d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/85370d54-40d1-4912-bcbe-37a2481c861d.png -------------------------------------------------------------------------------- /pics/85583359-1b45-45f2-9811-4f7bb9a64db7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/85583359-1b45-45f2-9811-4f7bb9a64db7.jpg -------------------------------------------------------------------------------- /pics/8587132a-021d-4f1f-a8ec-5a9daa7157a7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8587132a-021d-4f1f-a8ec-5a9daa7157a7.png -------------------------------------------------------------------------------- /pics/85c05fb1-5546-4c50-9221-21f231cdc8c5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/85c05fb1-5546-4c50-9221-21f231cdc8c5.jpg -------------------------------------------------------------------------------- /pics/864bfa7d-1149-420c-a752-f9b3d4e782ec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/864bfa7d-1149-420c-a752-f9b3d4e782ec.png -------------------------------------------------------------------------------- /pics/8668a3e1-c9c7-4fcb-98b2-a96a5d841579.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8668a3e1-c9c7-4fcb-98b2-a96a5d841579.png -------------------------------------------------------------------------------- /pics/867e93eb-3161-4f39-b2d2-c0cd3788e194.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/867e93eb-3161-4f39-b2d2-c0cd3788e194.png -------------------------------------------------------------------------------- /pics/86e6a91d-a285-447a-9345-c5484b8d0c47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/86e6a91d-a285-447a-9345-c5484b8d0c47.png -------------------------------------------------------------------------------- /pics/88ff46b3-028a-4dbb-a572-1f062b8b96d3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/88ff46b3-028a-4dbb-a572-1f062b8b96d3.png -------------------------------------------------------------------------------- /pics/897503d0-59e3-4752-903d-529fbdb72fee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/897503d0-59e3-4752-903d-529fbdb72fee.jpg -------------------------------------------------------------------------------- /pics/8a4c6ad4-a816-47d1-b93f-7ca4f78ab67a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8a4c6ad4-a816-47d1-b93f-7ca4f78ab67a.png -------------------------------------------------------------------------------- /pics/8adb2591-d3f1-4632-84cb-823fb9c5eb09.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8adb2591-d3f1-4632-84cb-823fb9c5eb09.jpg -------------------------------------------------------------------------------- /pics/8ae4550b-f0cb-4e4d-9e2b-c550538bf230.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8ae4550b-f0cb-4e4d-9e2b-c550538bf230.png -------------------------------------------------------------------------------- /pics/8af348d0-4d72-4f76-b56c-0a440ed4673d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8af348d0-4d72-4f76-b56c-0a440ed4673d.png -------------------------------------------------------------------------------- /pics/8b335d94-c1ca-42e1-ad48-bb179d28a4f1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8b335d94-c1ca-42e1-ad48-bb179d28a4f1.jpg -------------------------------------------------------------------------------- /pics/8b798007-e0fb-420c-b981-ead215692417.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8b798007-e0fb-420c-b981-ead215692417.jpg -------------------------------------------------------------------------------- /pics/8c0b3ae1-1087-46f4-8637-8d46b4ae659c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8c0b3ae1-1087-46f4-8637-8d46b4ae659c.png -------------------------------------------------------------------------------- /pics/8c662999-c16c-481c-9f40-1fdba5bc9167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8c662999-c16c-481c-9f40-1fdba5bc9167.png -------------------------------------------------------------------------------- /pics/8cc671f0-7134-44b1-a7b5-6d24fe55e1c1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8cc671f0-7134-44b1-a7b5-6d24fe55e1c1.jpg -------------------------------------------------------------------------------- /pics/8dfb4cc9-26da-45e7-b820-4576fa1cbb0e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8dfb4cc9-26da-45e7-b820-4576fa1cbb0e.png -------------------------------------------------------------------------------- /pics/8f0cc500-5994-4c7a-91a9-62885d658662.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8f0cc500-5994-4c7a-91a9-62885d658662.png -------------------------------------------------------------------------------- /pics/8f3b9519-d705-48fe-87ad-2e4052fc81d2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8f3b9519-d705-48fe-87ad-2e4052fc81d2.png -------------------------------------------------------------------------------- /pics/8f64e9c5-7682-4feb-9312-dea09514e160.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8f64e9c5-7682-4feb-9312-dea09514e160.jpg -------------------------------------------------------------------------------- /pics/8f6f9dc9-9ecd-47c8-b50e-2814f0219056.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8f6f9dc9-9ecd-47c8-b50e-2814f0219056.png -------------------------------------------------------------------------------- /pics/8fe838e3-ef77-4f63-bf45-417b6bc5c6bb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/8fe838e3-ef77-4f63-bf45-417b6bc5c6bb.png -------------------------------------------------------------------------------- /pics/902b83ab-8054-4bd2-898f-9a4a0fe52830.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/902b83ab-8054-4bd2-898f-9a4a0fe52830.jpg -------------------------------------------------------------------------------- /pics/902ef59f-7bcb-45a1-a80a-2f7afaa03629.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/902ef59f-7bcb-45a1-a80a-2f7afaa03629.jpg -------------------------------------------------------------------------------- /pics/910f613f-514f-4534-87dd-9b4699d59d31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/910f613f-514f-4534-87dd-9b4699d59d31.png -------------------------------------------------------------------------------- /pics/9110c1a0-8a54-4145-a814-2477d0128114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9110c1a0-8a54-4145-a814-2477d0128114.png -------------------------------------------------------------------------------- /pics/91ef04e4-923a-4277-99c0-6be4ce81e5ac.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/91ef04e4-923a-4277-99c0-6be4ce81e5ac.jpg -------------------------------------------------------------------------------- /pics/920c034c-c212-4f79-9ddb-84e4bb6cd088.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/920c034c-c212-4f79-9ddb-84e4bb6cd088.png -------------------------------------------------------------------------------- /pics/924914c0-660c-4e4a-bbc0-1df1146e7516.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/924914c0-660c-4e4a-bbc0-1df1146e7516.jpg -------------------------------------------------------------------------------- /pics/926c7438-c5e1-4b94-840a-dcb24ff1dafe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/926c7438-c5e1-4b94-840a-dcb24ff1dafe.png -------------------------------------------------------------------------------- /pics/92ad9bae-7d02-43ba-8115-a9d6f530ca28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/92ad9bae-7d02-43ba-8115-a9d6f530ca28.png -------------------------------------------------------------------------------- /pics/94589319-975f-490b-8bae-90b3a4953559.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/94589319-975f-490b-8bae-90b3a4953559.png -------------------------------------------------------------------------------- /pics/952afa9a-458b-44ce-bba9-463e60162945.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/952afa9a-458b-44ce-bba9-463e60162945.png -------------------------------------------------------------------------------- /pics/952e06bd-5a65-4cab-82e4-dd1536462f38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/952e06bd-5a65-4cab-82e4-dd1536462f38.png -------------------------------------------------------------------------------- /pics/955af054-8872-4569-82e7-2e10b66bc38e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/955af054-8872-4569-82e7-2e10b66bc38e.png -------------------------------------------------------------------------------- /pics/96b63e13-e2d8-4ddb-9aa1-a38959ca96e5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/96b63e13-e2d8-4ddb-9aa1-a38959ca96e5.jpg -------------------------------------------------------------------------------- /pics/992faced-afcf-414d-b801-9c16d6570fec.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/992faced-afcf-414d-b801-9c16d6570fec.jpg -------------------------------------------------------------------------------- /pics/9b829410-86c4-40aa-ba8d-9e8e26c0eeb8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9b829410-86c4-40aa-ba8d-9e8e26c0eeb8.jpg -------------------------------------------------------------------------------- /pics/9b838aee-0996-44a5-9b0f-3d1e3e2f5100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9b838aee-0996-44a5-9b0f-3d1e3e2f5100.png -------------------------------------------------------------------------------- /pics/9bbddeeb-e939-41f0-8e8e-2b1a0aa7e0a7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9bbddeeb-e939-41f0-8e8e-2b1a0aa7e0a7.png -------------------------------------------------------------------------------- /pics/9cd0ae20-4fb5-4017-a000-f7d3a0eb3529.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9cd0ae20-4fb5-4017-a000-f7d3a0eb3529.png -------------------------------------------------------------------------------- /pics/9d0a637c-6a8f-4f5a-99b9-fdcfa26793ff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9d0a637c-6a8f-4f5a-99b9-fdcfa26793ff.png -------------------------------------------------------------------------------- /pics/9d549816-60b7-4899-9877-23b01503ab13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9d549816-60b7-4899-9877-23b01503ab13.png -------------------------------------------------------------------------------- /pics/9e80f75a-b12b-4344-80c8-1f9ccc2d5246.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9e80f75a-b12b-4344-80c8-1f9ccc2d5246.jpg -------------------------------------------------------------------------------- /pics/9ea86eb5-000a-4281-b948-7b567bd6f1d8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/9ea86eb5-000a-4281-b948-7b567bd6f1d8.png -------------------------------------------------------------------------------- /pics/ClienteServidorSockets1521731145260.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ClienteServidorSockets1521731145260.jpg -------------------------------------------------------------------------------- /pics/a01d1516-8168-461a-a24b-620b9cfc40f4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a01d1516-8168-461a-a24b-620b9cfc40f4.png -------------------------------------------------------------------------------- /pics/a0df8edc-581b-4977-95c2-d7025795b899.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a0df8edc-581b-4977-95c2-d7025795b899.png -------------------------------------------------------------------------------- /pics/a1198642-9159-4d88-8aec-c3b04e7a2563.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a1198642-9159-4d88-8aec-c3b04e7a2563.jpg -------------------------------------------------------------------------------- /pics/a2d13178-f1ef-4811-a240-1fe95b55b1eb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a2d13178-f1ef-4811-a240-1fe95b55b1eb.png -------------------------------------------------------------------------------- /pics/a314bb79-5b18-4e63-a976-3448bffa6f1b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a314bb79-5b18-4e63-a976-3448bffa6f1b.png -------------------------------------------------------------------------------- /pics/a3253deb-8d21-40a1-aae4-7d178e4aa319.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a3253deb-8d21-40a1-aae4-7d178e4aa319.jpg -------------------------------------------------------------------------------- /pics/a3da4342-078b-43e2-b748-7e71bec50dc4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a3da4342-078b-43e2-b748-7e71bec50dc4.png -------------------------------------------------------------------------------- /pics/a3f34241-bb80-4879-8ec9-dff2d81b514e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a3f34241-bb80-4879-8ec9-dff2d81b514e.jpg -------------------------------------------------------------------------------- /pics/a40661e4-1a71-46d2-a158-ff36f7fc3331.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a40661e4-1a71-46d2-a158-ff36f7fc3331.png -------------------------------------------------------------------------------- /pics/a4248c4b-6c1d-4fb8-a557-86da92d3a294.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a4248c4b-6c1d-4fb8-a557-86da92d3a294.jpg -------------------------------------------------------------------------------- /pics/a4b162e5-db2a-4a27-b213-1fe481c5a06a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a4b162e5-db2a-4a27-b213-1fe481c5a06a.png -------------------------------------------------------------------------------- /pics/a4c17d43-fa5e-4935-b74e-147e7f7e782c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a4c17d43-fa5e-4935-b74e-147e7f7e782c.png -------------------------------------------------------------------------------- /pics/a57a6fc8-c5e9-456c-80ff-a5139dda4b6e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a57a6fc8-c5e9-456c-80ff-a5139dda4b6e.png -------------------------------------------------------------------------------- /pics/a58e294a-615d-4ea0-9fbf-064a6daec4b2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a58e294a-615d-4ea0-9fbf-064a6daec4b2.png -------------------------------------------------------------------------------- /pics/a6026bb4-3daf-439f-b1ec-a5a24e19d2fb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a6026bb4-3daf-439f-b1ec-a5a24e19d2fb.jpg -------------------------------------------------------------------------------- /pics/a6ac2b08-3861-4e85-baa8-382287bfee9f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a6ac2b08-3861-4e85-baa8-382287bfee9f.png -------------------------------------------------------------------------------- /pics/a6c20f60-5eba-427d-9413-352ada4b40fe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a6c20f60-5eba-427d-9413-352ada4b40fe.png -------------------------------------------------------------------------------- /pics/a74b70ac-323a-4b31-b4d5-90569b8a944b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a74b70ac-323a-4b31-b4d5-90569b8a944b.png -------------------------------------------------------------------------------- /pics/a9077f06-7584-4f2b-8c20-3a8e46928820.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/a9077f06-7584-4f2b-8c20-3a8e46928820.jpg -------------------------------------------------------------------------------- /pics/aa29cc88-7256-4399-8c7f-3cf4a6489559.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/aa29cc88-7256-4399-8c7f-3cf4a6489559.png -------------------------------------------------------------------------------- /pics/aa42f9c6-ad7a-48f4-8e8b-f3b6de3feaec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/aa42f9c6-ad7a-48f4-8e8b-f3b6de3feaec.png -------------------------------------------------------------------------------- /pics/aa844ff0-cd16-4478-b415-da071b615a17.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/aa844ff0-cd16-4478-b415-da071b615a17.jpg -------------------------------------------------------------------------------- /pics/ab77240d-7338-4547-9183-00215e7220ec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ab77240d-7338-4547-9183-00215e7220ec.png -------------------------------------------------------------------------------- /pics/abb3e0d1-c1bd-45d0-8190-73c74a9f6679.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/abb3e0d1-c1bd-45d0-8190-73c74a9f6679.png -------------------------------------------------------------------------------- /pics/ac106e7e-489a-4082-abd9-dabebe48394c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ac106e7e-489a-4082-abd9-dabebe48394c.jpg -------------------------------------------------------------------------------- /pics/ac9b31ec-cef1-4880-a875-fc4571ca10e1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ac9b31ec-cef1-4880-a875-fc4571ca10e1.png -------------------------------------------------------------------------------- /pics/ace830df-9919-48ca-91b5-60b193f593d2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ace830df-9919-48ca-91b5-60b193f593d2.png -------------------------------------------------------------------------------- /pics/ae1b27b8-bc13-42e7-ac12-a2242e125499.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ae1b27b8-bc13-42e7-ac12-a2242e125499.png -------------------------------------------------------------------------------- /pics/ae3fc93a-44d5-4beb-b05a-874bd9c0a657.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ae3fc93a-44d5-4beb-b05a-874bd9c0a657.png -------------------------------------------------------------------------------- /pics/af198da1-2480-4043-b07f-a3b91a88b815.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/af198da1-2480-4043-b07f-a3b91a88b815.png -------------------------------------------------------------------------------- /pics/af4639f9-af54-4400-aaf5-4e261d96ace7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/af4639f9-af54-4400-aaf5-4e261d96ace7.png -------------------------------------------------------------------------------- /pics/b0c97118-8f30-4619-9c22-a141f627db39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b0c97118-8f30-4619-9c22-a141f627db39.png -------------------------------------------------------------------------------- /pics/b0e8ef47-2f23-4379-8c64-10d5cb44d438.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b0e8ef47-2f23-4379-8c64-10d5cb44d438.jpg -------------------------------------------------------------------------------- /pics/b0f61ac2-a4b6-4042-9cf0-ccf4238c1ff7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b0f61ac2-a4b6-4042-9cf0-ccf4238c1ff7.png -------------------------------------------------------------------------------- /pics/b1df9732-86ce-4d69-9f06-fba1db7b3b5a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b1df9732-86ce-4d69-9f06-fba1db7b3b5a.jpg -------------------------------------------------------------------------------- /pics/b1fa0453-a4b0-4eae-a352-48acca8fff74.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b1fa0453-a4b0-4eae-a352-48acca8fff74.png -------------------------------------------------------------------------------- /pics/b20a3466-44b4-445e-87c7-dd4fb9ef44b2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b20a3466-44b4-445e-87c7-dd4fb9ef44b2.png -------------------------------------------------------------------------------- /pics/b29f8971-9cb8-480d-b986-0e60c2ece069.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b29f8971-9cb8-480d-b986-0e60c2ece069.png -------------------------------------------------------------------------------- /pics/b396d726-b75f-4a32-89a2-03a7b6e19f6f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b396d726-b75f-4a32-89a2-03a7b6e19f6f.jpg -------------------------------------------------------------------------------- /pics/b418ca51-f005-4510-b7ad-f092eb6aeb24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b418ca51-f005-4510-b7ad-f092eb6aeb24.png -------------------------------------------------------------------------------- /pics/b4252c85-6fb0-4995-9a68-a1a5925fbdb1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b4252c85-6fb0-4995-9a68-a1a5925fbdb1.png -------------------------------------------------------------------------------- /pics/b4b29aa9-dd2c-467b-b75f-ca6541cb25b5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b4b29aa9-dd2c-467b-b75f-ca6541cb25b5.jpg -------------------------------------------------------------------------------- /pics/b54eeb16-0b0e-484c-be62-306f57c40d77.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b54eeb16-0b0e-484c-be62-306f57c40d77.jpg -------------------------------------------------------------------------------- /pics/b5bdcbe2-b958-4aef-9151-6ad963cb28b4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b5bdcbe2-b958-4aef-9151-6ad963cb28b4.png -------------------------------------------------------------------------------- /pics/b8081c84-62c4-4019-b3ee-4bd0e443d647.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b8081c84-62c4-4019-b3ee-4bd0e443d647.jpg -------------------------------------------------------------------------------- /pics/b84ba6fb-312b-4e69-8c77-fb6eb6fb38d4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b84ba6fb-312b-4e69-8c77-fb6eb6fb38d4.png -------------------------------------------------------------------------------- /pics/b8dd708d-f372-4b04-b828-1dd99021c244.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b8dd708d-f372-4b04-b828-1dd99021c244.png -------------------------------------------------------------------------------- /pics/b988877c-0f0a-4593-916d-de2081320628.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b988877c-0f0a-4593-916d-de2081320628.jpg -------------------------------------------------------------------------------- /pics/b9a39d2a-618c-468b-86db-2e851f1a0057.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b9a39d2a-618c-468b-86db-2e851f1a0057.jpg -------------------------------------------------------------------------------- /pics/b9d79a5a-e7af-499b-b989-f10483e71b8b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/b9d79a5a-e7af-499b-b989-f10483e71b8b.jpg -------------------------------------------------------------------------------- /pics/baaa681f-7c52-4198-a5ae-303b9386cf47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/baaa681f-7c52-4198-a5ae-303b9386cf47.png -------------------------------------------------------------------------------- /pics/bb6a49be-00f2-4f27-a0ce-4ed764bc605c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bb6a49be-00f2-4f27-a0ce-4ed764bc605c.png -------------------------------------------------------------------------------- /pics/bc603930-d74d-4499-a3e7-2d740fc07f33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bc603930-d74d-4499-a3e7-2d740fc07f33.png -------------------------------------------------------------------------------- /pics/bc775758-89ab-4805-9f9c-78b8739cf780.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bc775758-89ab-4805-9f9c-78b8739cf780.jpg -------------------------------------------------------------------------------- /pics/be5c2c61-86d2-4dba-a289-b48ea23219de.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/be5c2c61-86d2-4dba-a289-b48ea23219de.jpg -------------------------------------------------------------------------------- /pics/be7dca03-12ec-456b-8b54-b1b3161f5531.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/be7dca03-12ec-456b-8b54-b1b3161f5531.png -------------------------------------------------------------------------------- /pics/beba612e-dc5b-4fc2-869d-0b23408ac90a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/beba612e-dc5b-4fc2-869d-0b23408ac90a.png -------------------------------------------------------------------------------- /pics/bee1ff1d-c80f-4b3c-b58c-7073a8896ab2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bee1ff1d-c80f-4b3c-b58c-7073a8896ab2.jpg -------------------------------------------------------------------------------- /pics/bf0ff9fc-467e-4a3f-8922-115ba2c55bde.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bf0ff9fc-467e-4a3f-8922-115ba2c55bde.png -------------------------------------------------------------------------------- /pics/bf16c541-0717-473b-b75d-4115864f4fbf.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bf16c541-0717-473b-b75d-4115864f4fbf.jpg -------------------------------------------------------------------------------- /pics/bf667594-bb4b-4634-bf9b-0596a45415ba.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bf667594-bb4b-4634-bf9b-0596a45415ba.jpg -------------------------------------------------------------------------------- /pics/bfbb11e2-d208-4efa-b97b-24cd40467cd8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/bfbb11e2-d208-4efa-b97b-24cd40467cd8.png -------------------------------------------------------------------------------- /pics/c037c901-7eae-4e31-a1e4-9d41329e5c3e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c037c901-7eae-4e31-a1e4-9d41329e5c3e.png -------------------------------------------------------------------------------- /pics/c0a9fa91-da2e-4892-8c9f-80206a6f7047.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c0a9fa91-da2e-4892-8c9f-80206a6f7047.png -------------------------------------------------------------------------------- /pics/c2117f61-1177-4768-bf33-cf4f950d911c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c2117f61-1177-4768-bf33-cf4f950d911c.png -------------------------------------------------------------------------------- /pics/c23957e9-a572-44f8-be15-f306c8b92722.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c23957e9-a572-44f8-be15-f306c8b92722.jpg -------------------------------------------------------------------------------- /pics/c28c6fbc-2bc1-47d9-9b2e-cf3d4034f877.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c28c6fbc-2bc1-47d9-9b2e-cf3d4034f877.jpg -------------------------------------------------------------------------------- /pics/c2cbf5d2-82af-4c78-bd43-495da5adf55f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c2cbf5d2-82af-4c78-bd43-495da5adf55f.png -------------------------------------------------------------------------------- /pics/c2d343f7-604c-4856-9a3c-c71d6f67fecc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c2d343f7-604c-4856-9a3c-c71d6f67fecc.png -------------------------------------------------------------------------------- /pics/c2f0c8e2-da66-498c-a38f-e1176abee29e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c2f0c8e2-da66-498c-a38f-e1176abee29e.png -------------------------------------------------------------------------------- /pics/c3369072-c740-43b0-b276-202bd1d3960d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c3369072-c740-43b0-b276-202bd1d3960d.jpg -------------------------------------------------------------------------------- /pics/c3c1c0e8-3a78-4426-961f-b46dd0879dd8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c3c1c0e8-3a78-4426-961f-b46dd0879dd8.png -------------------------------------------------------------------------------- /pics/c4c14368-519c-4a0e-8331-0a553715e3e7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c4c14368-519c-4a0e-8331-0a553715e3e7.jpg -------------------------------------------------------------------------------- /pics/c5022dd3-be22-4250-b9f6-38ae984a04d7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c5022dd3-be22-4250-b9f6-38ae984a04d7.jpg -------------------------------------------------------------------------------- /pics/c5085437-54df-4304-b62d-44b961711ba7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c5085437-54df-4304-b62d-44b961711ba7.png -------------------------------------------------------------------------------- /pics/c5f611f0-fd5c-4158-9003-278141136e6e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c5f611f0-fd5c-4158-9003-278141136e6e.jpg -------------------------------------------------------------------------------- /pics/c625baa0-dde6-449e-93df-c3a67f2f430f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c625baa0-dde6-449e-93df-c3a67f2f430f.jpg -------------------------------------------------------------------------------- /pics/c79da808-0f28-4a36-bc04-33ccc5b83c13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c79da808-0f28-4a36-bc04-33ccc5b83c13.png -------------------------------------------------------------------------------- /pics/c7d4956c-9988-4a10-a704-28fdae7f3d28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c7d4956c-9988-4a10-a704-28fdae7f3d28.png -------------------------------------------------------------------------------- /pics/c812c28a-1513-4a82-bfda-ab6a40981aa0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c812c28a-1513-4a82-bfda-ab6a40981aa0.png -------------------------------------------------------------------------------- /pics/c81af7d8-3128-4a3c-a9c9-3e0f5b87ab22.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c81af7d8-3128-4a3c-a9c9-3e0f5b87ab22.jpg -------------------------------------------------------------------------------- /pics/c8d18ca9-0b09-441a-9a0c-fb063630d708.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c8d18ca9-0b09-441a-9a0c-fb063630d708.png -------------------------------------------------------------------------------- /pics/c8dbff58-d981-48be-8c1c-caa6c2738791.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c8dbff58-d981-48be-8c1c-caa6c2738791.jpg -------------------------------------------------------------------------------- /pics/c9a1de44-b1c0-4d13-a654-827d4ef8a723.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c9a1de44-b1c0-4d13-a654-827d4ef8a723.png -------------------------------------------------------------------------------- /pics/c9ad2bf4-5580-4018-bce4-1b9a71804d9c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c9ad2bf4-5580-4018-bce4-1b9a71804d9c.png -------------------------------------------------------------------------------- /pics/c9cfcd20-c901-435f-9a07-3e46830c359f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c9cfcd20-c901-435f-9a07-3e46830c359f.jpg -------------------------------------------------------------------------------- /pics/c9cfd600-bc91-4f3a-9f99-b42f88a5bb24.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/c9cfd600-bc91-4f3a-9f99-b42f88a5bb24.jpg -------------------------------------------------------------------------------- /pics/cb0ed469-27ab-471b-a830-648b279103c8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/cb0ed469-27ab-471b-a830-648b279103c8.png -------------------------------------------------------------------------------- /pics/cbf50eb8-22b4-4528-a2e7-d187143d57f7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/cbf50eb8-22b4-4528-a2e7-d187143d57f7.png -------------------------------------------------------------------------------- /pics/cd5fbcff-3f35-43a6-8ffa-082a93ce0f0e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/cd5fbcff-3f35-43a6-8ffa-082a93ce0f0e.png -------------------------------------------------------------------------------- /pics/cdbe1d12-5ad9-4acb-a717-bbc822c2acf3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/cdbe1d12-5ad9-4acb-a717-bbc822c2acf3.png -------------------------------------------------------------------------------- /pics/ce039f03-6588-4f0c-b35b-a494de0eac47.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ce039f03-6588-4f0c-b35b-a494de0eac47.png -------------------------------------------------------------------------------- /pics/cf4386a1-58c9-4eca-a17f-e12b1e9770eb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/cf4386a1-58c9-4eca-a17f-e12b1e9770eb.png -------------------------------------------------------------------------------- /pics/d0afdd23-c9a5-4d1c-9b3d-404bff3bd0d1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d0afdd23-c9a5-4d1c-9b3d-404bff3bd0d1.png -------------------------------------------------------------------------------- /pics/d160ec2e-cfe2-4640-bda7-62f53e58b8c0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d160ec2e-cfe2-4640-bda7-62f53e58b8c0.png -------------------------------------------------------------------------------- /pics/d1f81ac3-9fdb-4371-a49d-ca84917aa89f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d1f81ac3-9fdb-4371-a49d-ca84917aa89f.jpg -------------------------------------------------------------------------------- /pics/d2d34239-e7c1-482b-b33e-3170c5943556.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d2d34239-e7c1-482b-b33e-3170c5943556.jpg -------------------------------------------------------------------------------- /pics/d49466db-fdd3-4d36-8a86-47dc45c07a1e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d49466db-fdd3-4d36-8a86-47dc45c07a1e.jpg -------------------------------------------------------------------------------- /pics/d4c3a4a1-0846-46ec-9cc3-eaddfca71254.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d4c3a4a1-0846-46ec-9cc3-eaddfca71254.jpg -------------------------------------------------------------------------------- /pics/d4eef1e2-5703-4ca4-82ab-8dda93d6b81f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d4eef1e2-5703-4ca4-82ab-8dda93d6b81f.png -------------------------------------------------------------------------------- /pics/d52270b4-9097-4667-9f18-f405fc661c99.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d52270b4-9097-4667-9f18-f405fc661c99.png -------------------------------------------------------------------------------- /pics/d5c16be7-a1c0-4c8d-b6b9-5999cdc6f9b3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d5c16be7-a1c0-4c8d-b6b9-5999cdc6f9b3.png -------------------------------------------------------------------------------- /pics/d7f6dec1-02b6-4969-b3ab-e01ee78659b9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d7f6dec1-02b6-4969-b3ab-e01ee78659b9.png -------------------------------------------------------------------------------- /pics/d99dc9e2-197c-4085-813d-7195da1c6762.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/d99dc9e2-197c-4085-813d-7195da1c6762.png -------------------------------------------------------------------------------- /pics/db4921d4-184b-48ba-a3cf-1d1141e3ba2d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/db4921d4-184b-48ba-a3cf-1d1141e3ba2d.png -------------------------------------------------------------------------------- /pics/db54db2f-82b2-4222-8d63-e49a8a7fc966.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/db54db2f-82b2-4222-8d63-e49a8a7fc966.png -------------------------------------------------------------------------------- /pics/dbb8516d-37ba-4e2c-b26b-eefd7de21b45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dbb8516d-37ba-4e2c-b26b-eefd7de21b45.png -------------------------------------------------------------------------------- /pics/dbc5c9f1-c13c-4d06-86ba-7cc949eb4c8f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dbc5c9f1-c13c-4d06-86ba-7cc949eb4c8f.jpg -------------------------------------------------------------------------------- /pics/dbd60b1f-b700-4da6-a993-62578e892333.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dbd60b1f-b700-4da6-a993-62578e892333.jpg -------------------------------------------------------------------------------- /pics/dc00f70e-c5c8-4d20-baf1-2d70014a97e3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dc00f70e-c5c8-4d20-baf1-2d70014a97e3.jpg -------------------------------------------------------------------------------- /pics/dd15a984-e977-4644-b127-708cddb8ca99.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dd15a984-e977-4644-b127-708cddb8ca99.png -------------------------------------------------------------------------------- /pics/dd3b289c-d90e-44a6-a44c-4880517eb1de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dd3b289c-d90e-44a6-a44c-4880517eb1de.png -------------------------------------------------------------------------------- /pics/dd782132-d830-4c55-9884-cfac0a541b8e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dd782132-d830-4c55-9884-cfac0a541b8e.png -------------------------------------------------------------------------------- /pics/dd78a1fe-1ff3-4bcf-a56f-8c003995beb6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dd78a1fe-1ff3-4bcf-a56f-8c003995beb6.jpg -------------------------------------------------------------------------------- /pics/dda1608d-26e0-4f10-8327-a459969b150a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/dda1608d-26e0-4f10-8327-a459969b150a.png -------------------------------------------------------------------------------- /pics/ddb5ff4c-4ada-46aa-9bf1-140bdb5e4676.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ddb5ff4c-4ada-46aa-9bf1-140bdb5e4676.jpg -------------------------------------------------------------------------------- /pics/ddcf2327-8d84-425d-8535-121a94bcb88d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ddcf2327-8d84-425d-8535-121a94bcb88d.jpg -------------------------------------------------------------------------------- /pics/de9b9ea0-1327-4865-93e5-6f805c48bc9e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/de9b9ea0-1327-4865-93e5-6f805c48bc9e.png -------------------------------------------------------------------------------- /pics/e026c24d-00fa-4e7c-97a8-95a98cdc383a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e026c24d-00fa-4e7c-97a8-95a98cdc383a.png -------------------------------------------------------------------------------- /pics/e0900bb2-220a-43b7-9aa9-1d5cd55ff56e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e0900bb2-220a-43b7-9aa9-1d5cd55ff56e.png -------------------------------------------------------------------------------- /pics/e130e5b8-b19a-4f1e-b860-223040525cf6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e130e5b8-b19a-4f1e-b860-223040525cf6.jpg -------------------------------------------------------------------------------- /pics/e143f6da-d114-4ba4-8712-f65299047fa2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e143f6da-d114-4ba4-8712-f65299047fa2.png -------------------------------------------------------------------------------- /pics/e1eda3d5-5ec8-4708-8e25-1a04c5e11f48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e1eda3d5-5ec8-4708-8e25-1a04c5e11f48.png -------------------------------------------------------------------------------- /pics/e2f0d889-2330-424c-8193-198edebecff7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e2f0d889-2330-424c-8193-198edebecff7.png -------------------------------------------------------------------------------- /pics/e3124763-f75e-46c3-ba82-341e6c98d862.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e3124763-f75e-46c3-ba82-341e6c98d862.jpg -------------------------------------------------------------------------------- /pics/e31abb94-9201-4e06-9902-61101b92f475.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e31abb94-9201-4e06-9902-61101b92f475.png -------------------------------------------------------------------------------- /pics/e3bf5de4-ab1e-4a9b-896d-4b0ad7e9220a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e3bf5de4-ab1e-4a9b-896d-4b0ad7e9220a.jpg -------------------------------------------------------------------------------- /pics/e3f1657c-80fc-4dfa-9643-bf51abd201c6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e3f1657c-80fc-4dfa-9643-bf51abd201c6.png -------------------------------------------------------------------------------- /pics/e41405a8-7c05-4f70-8092-e961e28d3112.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e41405a8-7c05-4f70-8092-e961e28d3112.jpg -------------------------------------------------------------------------------- /pics/e6723b94-1a33-4605-b775-f6813352d383.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e6723b94-1a33-4605-b775-f6813352d383.png -------------------------------------------------------------------------------- /pics/e6b733ad-606d-4028-b3e8-83c3a73a3797.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e6b733ad-606d-4028-b3e8-83c3a73a3797.jpg -------------------------------------------------------------------------------- /pics/e6bded8e-41a0-489a-88a6-638e88ab7666.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e6bded8e-41a0-489a-88a6-638e88ab7666.jpg -------------------------------------------------------------------------------- /pics/e800b001-7779-495b-8459-d33a7440d7b8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e800b001-7779-495b-8459-d33a7440d7b8.jpg -------------------------------------------------------------------------------- /pics/e82e0454-4ece-435e-945f-90bc0d37bf44.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e82e0454-4ece-435e-945f-90bc0d37bf44.png -------------------------------------------------------------------------------- /pics/e92d0ebc-7d46-413b-aec1-34a39602f787.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/e92d0ebc-7d46-413b-aec1-34a39602f787.png -------------------------------------------------------------------------------- /pics/ea2304ce-268b-4238-9486-4d8f8aea8ca4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ea2304ce-268b-4238-9486-4d8f8aea8ca4.png -------------------------------------------------------------------------------- /pics/ea5f3efe-d5e6-499b-b278-9e898af61257.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ea5f3efe-d5e6-499b-b278-9e898af61257.jpg -------------------------------------------------------------------------------- /pics/eb4a7007-d437-4740-865d-672973effe25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/eb4a7007-d437-4740-865d-672973effe25.png -------------------------------------------------------------------------------- /pics/eb859228-c0f2-4bce-910d-d9f76929352b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/eb859228-c0f2-4bce-910d-d9f76929352b.png -------------------------------------------------------------------------------- /pics/ec923dc7-864c-47b0-a411-1f2c48d084de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ec923dc7-864c-47b0-a411-1f2c48d084de.png -------------------------------------------------------------------------------- /pics/ecf8ad5d-5403-48b9-b6e7-f2e20ffe8fca.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ecf8ad5d-5403-48b9-b6e7-f2e20ffe8fca.png -------------------------------------------------------------------------------- /pics/ed523051-608f-4c3f-b343-383e2d194470.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ed523051-608f-4c3f-b343-383e2d194470.png -------------------------------------------------------------------------------- /pics/ed5522bb-3a60-481c-8654-43e7195a48fe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ed5522bb-3a60-481c-8654-43e7195a48fe.png -------------------------------------------------------------------------------- /pics/ed7b96ac-6428-4bd5-9986-674c54c2a959.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ed7b96ac-6428-4bd5-9986-674c54c2a959.png -------------------------------------------------------------------------------- /pics/eebdeb57-8efb-4848-9bb6-97512990897c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/eebdeb57-8efb-4848-9bb6-97512990897c.jpg -------------------------------------------------------------------------------- /pics/ef280699-da36-4b38-9735-9b048a3c7fe0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ef280699-da36-4b38-9735-9b048a3c7fe0.png -------------------------------------------------------------------------------- /pics/ef8eab00-1d5e-4d99-a7c2-d6d68ea7fe92.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ef8eab00-1d5e-4d99-a7c2-d6d68ea7fe92.png -------------------------------------------------------------------------------- /pics/f0574025-c514-49f5-a591-6d6a71f271f7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f0574025-c514-49f5-a591-6d6a71f271f7.jpg -------------------------------------------------------------------------------- /pics/f0a31c04-6e26-408c-8395-88f4e2ae928b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f0a31c04-6e26-408c-8395-88f4e2ae928b.jpg -------------------------------------------------------------------------------- /pics/f0e35b7a-2948-488a-a5a9-97d3f6b5e2d7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f0e35b7a-2948-488a-a5a9-97d3f6b5e2d7.png -------------------------------------------------------------------------------- /pics/f1109d04-3c67-48a3-9963-2c475f94e175.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f1109d04-3c67-48a3-9963-2c475f94e175.jpg -------------------------------------------------------------------------------- /pics/f3080f83-6239-459b-8e9c-03b6641f7815.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f3080f83-6239-459b-8e9c-03b6641f7815.png -------------------------------------------------------------------------------- /pics/f3bfe11f-9cba-4ff2-8cc6-629068408a80.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f3bfe11f-9cba-4ff2-8cc6-629068408a80.jpg -------------------------------------------------------------------------------- /pics/f3d3e072-e947-43e9-b999-22385fd569a0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f3d3e072-e947-43e9-b999-22385fd569a0.jpg -------------------------------------------------------------------------------- /pics/f42443e0-208d-41ea-be44-c7fd97d2e3bf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f42443e0-208d-41ea-be44-c7fd97d2e3bf.png -------------------------------------------------------------------------------- /pics/f48e2b92-2c2a-48cb-a443-bd313e187a25.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f48e2b92-2c2a-48cb-a443-bd313e187a25.jpg -------------------------------------------------------------------------------- /pics/f4cdda3e-324c-49b5-8c14-08a3db634b29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f4cdda3e-324c-49b5-8c14-08a3db634b29.png -------------------------------------------------------------------------------- /pics/f50a8e52-a683-444c-8e32-63c1890fe84a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f50a8e52-a683-444c-8e32-63c1890fe84a.jpg -------------------------------------------------------------------------------- /pics/f5477abd-c246-4851-89ab-6b1cde2549b1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f5477abd-c246-4851-89ab-6b1cde2549b1.png -------------------------------------------------------------------------------- /pics/f5757d09-88e7-4bbd-8cfb-cecf55604854.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f5757d09-88e7-4bbd-8cfb-cecf55604854.png -------------------------------------------------------------------------------- /pics/f61b5419-c94a-4df1-8d4d-aed9ae8cc6d5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f61b5419-c94a-4df1-8d4d-aed9ae8cc6d5.png -------------------------------------------------------------------------------- /pics/f716427a-94f2-4875-9c86-98793cf5dcc3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f716427a-94f2-4875-9c86-98793cf5dcc3.jpg -------------------------------------------------------------------------------- /pics/f76067a5-7d5f-4135-9549-8199c77d8f1c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f76067a5-7d5f-4135-9549-8199c77d8f1c.jpg -------------------------------------------------------------------------------- /pics/f7d170a3-e446-4a64-ac2d-cb95028f81a8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f7d170a3-e446-4a64-ac2d-cb95028f81a8.png -------------------------------------------------------------------------------- /pics/f7ecbb8d-bb8b-4d45-a3b7-f49425d6d83d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f7ecbb8d-bb8b-4d45-a3b7-f49425d6d83d.jpg -------------------------------------------------------------------------------- /pics/f7f7e3e5-7dd4-4173-9999-576b9e2ac0a2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f7f7e3e5-7dd4-4173-9999-576b9e2ac0a2.png -------------------------------------------------------------------------------- /pics/f8047846-efd4-42be-b6b7-27a7c4998b51.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f8047846-efd4-42be-b6b7-27a7c4998b51.png -------------------------------------------------------------------------------- /pics/f87afe72-c2df-4c12-ac03-9b8d581a8af8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f87afe72-c2df-4c12-ac03-9b8d581a8af8.jpg -------------------------------------------------------------------------------- /pics/f8b16d1e-7363-4544-94d6-4939fdf849dc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f8b16d1e-7363-4544-94d6-4939fdf849dc.png -------------------------------------------------------------------------------- /pics/f8b3f73d-0fda-449f-b55b-fa36b7ac04cd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f8b3f73d-0fda-449f-b55b-fa36b7ac04cd.png -------------------------------------------------------------------------------- /pics/f900f266-a323-42b2-bc43-218fdb8811a8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f900f266-a323-42b2-bc43-218fdb8811a8.jpg -------------------------------------------------------------------------------- /pics/f94389e9-55b1-4f49-9d37-00ed05900ae0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f94389e9-55b1-4f49-9d37-00ed05900ae0.png -------------------------------------------------------------------------------- /pics/f9978fa6-9f49-4a0f-8540-02d269ac448f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f9978fa6-9f49-4a0f-8540-02d269ac448f.png -------------------------------------------------------------------------------- /pics/f99ee771-c56f-47fb-9148-c0036695b5fe.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f99ee771-c56f-47fb-9148-c0036695b5fe.jpg -------------------------------------------------------------------------------- /pics/f9f2a16b-4843-44d1-9759-c745772e9bcf.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f9f2a16b-4843-44d1-9759-c745772e9bcf.jpg -------------------------------------------------------------------------------- /pics/f9f9f993-8ece-4da7-b848-af9b438fad76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/f9f9f993-8ece-4da7-b848-af9b438fad76.png -------------------------------------------------------------------------------- /pics/fa2273c3-1b5f-48ce-8e8b-441a4116c1c4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fa2273c3-1b5f-48ce-8e8b-441a4116c1c4.jpg -------------------------------------------------------------------------------- /pics/fa568fac-ac58-48dd-a9bb-23b3065bf2dc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fa568fac-ac58-48dd-a9bb-23b3065bf2dc.png -------------------------------------------------------------------------------- /pics/faecea49-9974-40db-9821-c8636137df61.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/faecea49-9974-40db-9821-c8636137df61.jpg -------------------------------------------------------------------------------- /pics/fb327611-7e2b-4f2f-9f5b-38592d408f07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fb327611-7e2b-4f2f-9f5b-38592d408f07.png -------------------------------------------------------------------------------- /pics/fb44307f-8e98-4ff7-a918-31dacfa564b4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fb44307f-8e98-4ff7-a918-31dacfa564b4.jpg -------------------------------------------------------------------------------- /pics/fb546e12-e1fb-4b72-a1fb-8a7f5000dce6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fb546e12-e1fb-4b72-a1fb-8a7f5000dce6.jpg -------------------------------------------------------------------------------- /pics/fbe54203-c005-48f0-8883-b05e564a3173.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fbe54203-c005-48f0-8883-b05e564a3173.png -------------------------------------------------------------------------------- /pics/fc0c6b2d-68c7-4de8-aaaa-97355a4f0472.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/fc0c6b2d-68c7-4de8-aaaa-97355a4f0472.jpg -------------------------------------------------------------------------------- /pics/ff0c019c-6461-467d-a266-0455341fd4f4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ff0c019c-6461-467d-a266-0455341fd4f4.png -------------------------------------------------------------------------------- /pics/ff396233-1bb1-4e74-8bc2-d7c90146f5dd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/ff396233-1bb1-4e74-8bc2-d7c90146f5dd.png -------------------------------------------------------------------------------- /pics/011f3ef6-d824-4d43-8b2c-36dab8eaaa72-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/011f3ef6-d824-4d43-8b2c-36dab8eaaa72-1.png -------------------------------------------------------------------------------- /pics/Technology-ComputerNetworking-Internet-ISPs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/Technology-ComputerNetworking-Internet-ISPs.png -------------------------------------------------------------------------------- /pics/hashMap_u54C8_u5E0C_u7B97_u6CD5_u4F8B_u56FE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CheneyWoo/CS-Notes/master/pics/hashMap_u54C8_u5E0C_u7B97_u6CD5_u4F8B_u56FE.png -------------------------------------------------------------------------------- /notes/代码风格规范.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | - [Twitter Java Style Guide](https://github.com/twitter/commons/blob/master/src/java/com/twitter/common/styleguide.md) 6 | - [Google Java Style Guide](http://google.github.io/styleguide/javaguide.html) 7 | - [阿里巴巴Java开发手册](https://github.com/alibaba/p3c/blob/master/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4Java%E5%BC%80%E5%8F%91%E6%89%8B%E5%86%8C%EF%BC%88%E8%AF%A6%E5%B0%BD%E7%89%88%EF%BC%89.pdf) 8 | -------------------------------------------------------------------------------- /other/Group.md: -------------------------------------------------------------------------------- 1 | 创建交流群的主要目的是为了给大家提供一个交流平台,方便大家在学习的过程中互相讨论。 2 | 3 | 这个交流群不是一个笔者的问题回答群,我更希望大家能够愿意积极回答,我相信提问和回答的过程都可以提高大家对知识的掌握程度。 4 | 5 | 至于交流群和 Issue 有什么区别,主要是两方面:一是交流群实时性高一些,二是交流群会更活跃一些。 6 | 7 | 另外,Issue 主要是用来发布一些项目中的错误和一些改进建议,当然也可以发布一些可以讨论的问题。 8 | 9 | 交流群可以讨论的内容比较广,例如在阅读本项目过程中不理解的地方可以在交流群中寻求别人的帮助、新技术的讨论、招聘信息、学习和工作的感受等等。 10 | 11 | 交流群不讨论政治,不讨论有争议性的话题,不发表仇视言论,不传播谣言,不发布广告(招聘信息之类的可以)。 12 | 13 |

14 | 15 | 16 | -------------------------------------------------------------------------------- /other/leetcode 总结.md: -------------------------------------------------------------------------------- 1 | # LeetCode 面试必备 2 | - 💪 就是干!如果你觉得有帮助请点个star,谢谢! 3 | 4 | > **欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远** 5 | 6 | ## LeetCode 习题集合 7 | 8 | * [LeetCode 解题集合](https://github.com/apachecn/LeetCode/tree/master/docs/Leetcode_Solutions) 9 | 10 | 11 | ## 模版要求 12 | 13 | > 提交PR基本要求(满足任意一种即可) 14 | 15 | * 1. 不一样的思路 16 | * 2. 优化时间复杂度和空间复杂度,或者解决题目的Follow up 17 | * 3. 有意义的简化代码 18 | * 4. 未提交过的题目 19 | 20 | > **案例模版** 21 | 22 | [模版:007. Reverse Integer 反转整数](https://github.com/apachecn/LeetCode/tree/master/docs/Leetcode_Solutions/007._Reverse_Integer.md) 23 | 24 | 25 | ## 项目贡献者 26 | 27 | > 项目发起人 28 | 29 | * [@Lisanaaa](https://github.com/Lisanaaa) 30 | * [@片刻](https://github.com/jiangzhonglian) 31 | 32 | > 贡献者(欢迎大家来追加) 33 | 34 | * [@Lisanaaa](https://github.com/Lisanaaa) 35 | * [@片刻](https://github.com/jiangzhonglian) 36 | * [@小瑶](https://github.com/chenyyx) 37 | 38 | -------------------------------------------------------------------------------- /SUMMARY.md: -------------------------------------------------------------------------------- 1 | This file used to generate gitbook catalogue. 2 | 3 | # Summary 4 | 5 | * 算法 6 | * [剑指 Offer 题解](/notes/剑指 offer 题解.md) 7 | * [Leetcode 题解](/notes/Leetcode 题解.md) 8 | * [算法](/notes/算法.md) 9 | * 操作系统 10 | * [计算机操作系统](/notes/计算机操作系统.md) 11 | * [Linux](/notes/Linux.md) 12 | * 网络 13 | * [计算机网络](/notes/计算机网络.md) 14 | * [HTTP](/notes/HTTP.md) 15 | * [Socket](/notes/Socket.md) 16 | * 面向对象 17 | * [设计模式](/notes/设计模式.md) 18 | * [面向对象思想](/notes/面向对象思想.md) 19 | * 数据库 20 | * [数据库系统原理](/notes/数据库系统原理.md) 21 | * [SQL](/notes/SQL.md) 22 | * [Leetcode-Database 题解](/notes/Leetcode-Database 题解.md) 23 | * [MySQL](/notes/MySQL.md) 24 | * [Redis](/notes/Redis.md) 25 | * Java 26 | * [Java 基础](/notes/Java 基础.md) 27 | * [Java 虚拟机](/notes/Java 虚拟机.md) 28 | * [Java 并发](/notes/Java 并发.md) 29 | * [Java 容器](/notes/Java 容器.md) 30 | * [Java I/O](/notes/Java IO.md) 31 | * 系统设计 32 | * [系统设计基础](/notes/系统设计基础.md) 33 | * [分布式](/notes/分布式.md) 34 | * [集群](/notes/集群.md) 35 | * [攻击技术](/notes/攻击技术.md) 36 | * [缓存](/notes/缓存.md) 37 | * [消息队列](/notes/消息队列.md) 38 | * 工具 39 | * [Git](/notes/Git.md) 40 | * [Docker](/notes/Docker.md) 41 | * [正则表达式](/notes/正则表达式.md) 42 | * [构建工具](/notes/构建工具.md) 43 | * 编码实践 44 | * [重构](/notes/重构.md) 45 | * [代码可读性](/notes/代码可读性.md) 46 | * [代码风格规范](/notes/代码风格规范.md) 47 | * 参考书目 48 | * [BOOKLIST](/BOOKLIST.md) 49 | 50 | -------------------------------------------------------------------------------- /notes/消息队列.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、消息模型](#一消息模型) 3 | * [点对点](#点对点) 4 | * [发布/订阅](#发布订阅) 5 | * [二、使用场景](#二使用场景) 6 | * [异步处理](#异步处理) 7 | * [流量削锋](#流量削锋) 8 | * [应用解耦](#应用解耦) 9 | * [三、可靠性](#三可靠性) 10 | * [发送端的可靠性](#发送端的可靠性) 11 | * [接收端的可靠性](#接收端的可靠性) 12 | * [参考资料](#参考资料) 13 | 14 | 15 | 16 | # 一、消息模型 17 | 18 | ## 点对点 19 | 20 | 消息生产者向消息队列中发送了一个消息之后,只能被一个消费者消费一次。 21 | 22 |

23 | 24 | ## 发布/订阅 25 | 26 | 消息生产者向频道发送一个消息之后,多个消费者可以从该频道订阅到这条消息并消费。 27 | 28 |

29 | 30 | 发布与订阅模式和观察者模式有以下不同: 31 | 32 | - 观察者模式中,观察者和主题都知道对方的存在;而在发布与订阅模式中,发布者与订阅者不知道对方的存在,它们之间通过频道进行通信。 33 | - 观察者模式是同步的,当事件触发时,主题会调用观察者的方法,然后等待方法返回;而发布与订阅模式是异步的,发布者向频道发送一个消息之后,就不需要关心订阅者何时去订阅这个消息,可以立即返回。 34 | 35 |

36 | 37 | # 二、使用场景 38 | 39 | ## 异步处理 40 | 41 | 发送者将消息发送给消息队列之后,不需要同步等待消息接收者处理完毕,而是立即返回进行其它操作。消息接收者从消息队列中订阅消息之后异步处理。 42 | 43 | 例如在注册流程中通常需要发送验证邮件来确保注册用户身份的合法性,可以使用消息队列使发送验证邮件的操作异步处理,用户在填写完注册信息之后就可以完成注册,而将发送验证邮件这一消息发送到消息队列中。 44 | 45 | 只有在业务流程允许异步处理的情况下才能这么做,例如上面的注册流程中,如果要求用户对验证邮件进行点击之后才能完成注册的话,就不能再使用消息队列。 46 | 47 | ## 流量削锋 48 | 49 | 在高并发的场景下,如果短时间有大量的请求到达会压垮服务器。 50 | 51 | 可以将请求发送到消息队列中,服务器按照其处理能力从消息队列中订阅消息进行处理。 52 | 53 | ## 应用解耦 54 | 55 | 如果模块之间不直接进行调用,模块之间耦合度就会很低,那么修改一个模块或者新增一个模块对其它模块的影响会很小,从而实现可扩展性。 56 | 57 | 通过使用消息队列,一个模块只需要向消息队列中发送消息,其它模块可以选择性地从消息队列中订阅消息从而完成调用。 58 | 59 | # 三、可靠性 60 | 61 | ## 发送端的可靠性 62 | 63 | 发送端完成操作后一定能将消息成功发送到消息队列中。 64 | 65 | 实现方法: 66 | 67 | - 在本地数据库建一张消息表,将消息数据与业务数据保存在同一数据库实例里,这样就可以利用本地数据库的事务机制。事务提交成功后,将消息表中的消息转移到消息队列中,若转移消息成功则删除消息表中的数据,否则继续重传。 68 | 69 | ## 接收端的可靠性 70 | 71 | 接收端能够从消息队列成功消费一次消息。 72 | 73 | 两种实现方法: 74 | 75 | - 保证接收端处理消息的业务逻辑具有幂等性:只要具有幂等性,那么消费多少次消息,最后处理的结果都是一样的。 76 | - 保证消息具有唯一编号,并使用一张日志表来记录已经消费的消息编号。 77 | 78 | # 参考资料 79 | 80 | - [Observer vs Pub-Sub](http://developers-club.com/posts/270339/) 81 | - [消息队列中点对点与发布订阅区别](https://blog.csdn.net/lizhitao/article/details/47723105) 82 | -------------------------------------------------------------------------------- /notes/系统设计基础.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、性能](#一性能) 3 | * [二、伸缩性](#二伸缩性) 4 | * [三、扩展性](#三扩展性) 5 | * [四、可用性](#四可用性) 6 | * [五、安全性](#五安全性) 7 | * [参考资料](#参考资料) 8 | 9 | 10 | 11 | # 一、性能 12 | 13 | ## 性能指标 14 | 15 | ### 1. 响应时间 16 | 17 | 指某个请求从发出到接收到响应消耗的时间。 18 | 19 | 在对响应时间进行测试时,通常采用重复请求方式,然后计算平均响应时间。 20 | 21 | ### 2. 吞吐量 22 | 23 | 指系统在单位时间内可以处理的请求数量,通常使用每秒的请求数来衡量。 24 | 25 | ### 3. 并发用户数 26 | 27 | 指系统能同时处理的并发用户请求数量。 28 | 29 | 在没有并发存在的系统中,请求被顺序执行,此时响应时间为吞吐量的倒数。例如系统支持的吞吐量为 100 req/s,那么平均响应时间应该为 0.01s。 30 | 31 | 目前的大型系统都支持多线程来处理并发请求,多线程能够提高吞吐量以及缩短响应时间,主要有两个原因: 32 | 33 | - 多 CPU 34 | - IO 等待时间 35 | 36 | 使用 IO 多路复用等方式,系统在等待一个 IO 操作完成的这段时间内不需要被阻塞,可以去处理其它请求。通过将这个等待时间利用起来,使得 CPU 利用率大大提高。 37 | 38 | 并发用户数不是越高越好,因为如果并发用户数太高,系统来不及处理这么多的请求,会使得过多的请求需要等待,那么响应时间就会大大提高。 39 | 40 | ## 性能优化 41 | 42 | ### 1. 集群 43 | 44 | 将多台服务器组成集群,使用负载均衡将请求转发到集群中,避免单一服务器的负载压力过大导致性能降低。 45 | 46 | ### 2. 缓存 47 | 48 | 缓存能够提高性能的原因如下: 49 | 50 | - 缓存数据通常位于内存等介质中,这种介质对于读操作特别快; 51 | - 缓存数据可以位于靠近用户的地理位置上; 52 | - 可以将计算结果进行缓存,从而避免重复计算。 53 | 54 | ### 3. 异步 55 | 56 | 某些流程可以将操作转换为消息,将消息发送到消息队列之后立即返回,之后这个操作会被异步处理。 57 | 58 | # 二、伸缩性 59 | 60 | 指不断向集群中添加服务器来缓解不断上升的用户并发访问压力和不断增长的数据存储需求。 61 | 62 | ## 伸缩性与性能 63 | 64 | 如果系统存在性能问题,那么单个用户的请求总是很慢的; 65 | 66 | 如果系统存在伸缩性问题,那么单个用户的请求可能会很快,但是在并发数很高的情况下系统会很慢。 67 | 68 | ## 实现伸缩性 69 | 70 | 应用服务器只要不具有状态,那么就可以很容易地通过负载均衡器向集群中添加新的服务器。 71 | 72 | 关系型数据库的伸缩性通过 Sharding 来实现,将数据按一定的规则分布到不同的节点上,从而解决单台存储服务器的存储空间限制。 73 | 74 | 对于非关系型数据库,它们天生就是为海量数据而诞生,对伸缩性的支持特别好。 75 | 76 | # 三、扩展性 77 | 78 | 指的是添加新功能时对现有系统的其它应用无影响,这就要求不同应用具备低耦合的特点。 79 | 80 | 实现可扩展主要有两种方式: 81 | 82 | - 使用消息队列进行解耦,应用之间通过消息传递进行通信; 83 | - 使用分布式服务将业务和可复用的服务分离开来,业务使用分布式服务框架调用可复用的服务。新增的产品可以通过调用可复用的服务来实现业务逻辑,对其它产品没有影响。 84 | 85 | # 四、可用性 86 | 87 | ## 冗余 88 | 89 | 保证高可用的主要手段是使用冗余,当某个服务器故障时就请求其它服务器。 90 | 91 | 应用服务器的冗余比较容易实现,只要保证应用服务器不具有状态,那么某个应用服务器故障时,负载均衡器将该应用服务器原先的用户请求转发到另一个应用服务器上,不会对用户有任何影响。 92 | 93 | 存储服务器的冗余需要使用主从复制来实现,当主服务器故障时,需要提升从服务器为主服务器,这个过程称为切换。 94 | 95 | ## 监控 96 | 97 | 对 CPU、内存、磁盘、网络等系统负载信息进行监控,当某个数据达到一定阈值时通知运维人员,从而在系统发生故障之前及时发现问题。 98 | 99 | ## 服务降级 100 | 101 | 服务降级是系统为了应对大量的请求,主动关闭部分功能,从而保证核心功能可用。 102 | 103 | # 五、安全性 104 | 105 | 要求系统在应对各种攻击手段时能够有可靠的应对措施。 106 | 107 | # 参考资料 108 | 109 | - 大型网站技术架构:核心原理与案例分析 110 | -------------------------------------------------------------------------------- /Additional.md: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 本文档提供博客内容的补充资料,记录一些还没写又很重要的内容。欢迎补充! 4 | 5 | 格式:\[资料名称\]\[标签1\]\[标签2\]... 6 | 7 | 8 | # 系统设计 9 | 10 | - [[system-design-primer][Github]](https://github.com/donnemartin/system-design-primer) 11 | - [[Leetcode / Interview Questions][题集]](https://leetcode.com/discuss/interview-question/?orderBy=most_votes) 12 | - [[系统设计面试题精选][Gitbook]](https://soulmachine.gitbooks.io/system-design/content/cn/) 13 | - [[海量数据面试题]](https://samanthachen.github.io/2016/08/01/%E6%B5%B7%E9%87%8F%E6%95%B0%E6%8D%AE%E9%9D%A2%E8%AF%95%E9%A2%98/) 14 | - [[前端经典面试题: 从输入 URL 到页面加载发生了什么?][具体问题]](https://segmentfault.com/a/1190000006879700) 15 | - [[秒杀系统架构分析与实战][具体问题]](https://my.oschina.net/xianggao/blog/524943) 16 | - [[微信二维码登录原理][具体问题]](https://zhuanlan.zhihu.com/p/22325152?refer=bittiger) 17 | - [[Create a TinyURL System][具体问题]](https://github.com/CyC2018/CS-Notes) 18 | - [[Design a Key-Value Store (Part I)][具体问题]](http://blog.gainlo.co/index.php/2016/06/14/design-a-key-value-store-part-i/) 19 | - [[坦率地讲 服务熔断 & 服务降级][知识点]](http://lexuslee.me/2018/02/01/2018-01-18-Service-fallback/) 20 | - [[理解 HTTP 幂等性][知识点]](https://www.cnblogs.com/weidagang2046/archive/2011/06/04/idempotence.html) 21 | - [[接口限流算法][知识点]](https://blog.csdn.net/ljj821061514/article/details/52512943) 22 | - [[微服务学习资料汇总][知识点]](https://www.infoq.cn/article/2014%2F07%2Fmicroservice-learning-resources) 23 | - [[理解 RESTful 架构][知识点]](http://www.ruanyifeng.com/blog/2011/09/restful.html) 24 | - [[MapReduce 算法][知识点]](https://github.com/xuelangZF/CS_Offer/blob/master/Others/Hadoop_Spark.md) 25 | 26 | # Spring 27 | 28 | - [[Spring 揭秘][书籍]](https://book.douban.com/subject/3897837/) 29 | - [[69 道 Spring 面试题和答案][面试题集锦]](http://ifeve.com/spring-interview-questions-and-answers/) 30 | - [[Spring 面试题][面试题集锦]](https://github.com/Homiss/Java-interview-questions/blob/master/%E6%A1%86%E6%9E%B6/Spring%20%E9%9D%A2%E8%AF%95%E9%A2%98.md) 31 | 32 | # 中间件 33 | 34 | - [[RabbitMQ 实战][书籍]](https://book.douban.com/subject/26649178/) 35 | - [[从 Paxos 到 Zookeeper][书籍]](https://book.douban.com/subject/26292004/)] 36 | - [[Apache Dubbo][文档]](http://dubbo.apache.org/zh-cn/) 37 | - [[nginx 快速入门之基本原理篇][入门]](https://zhuanlan.zhihu.com/p/31196264) 38 | - [[深入理解 Nginx][书籍]](https://book.douban.com/subject/22793675/) 39 | 40 | # 编程语言思想 41 | 42 | - [[函数式编程初探][入门]](http://www.ruanyifeng.com/blog/2012/04/functional_programming.html)] 43 | - [[函数式编程][全面]](https://coolshell.cn/articles/10822.html) 44 | - [[闭包][文档]](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures) 45 | - [[尾调用优化]](http://www.ruanyifeng.com/blog/2015/04/tail-call.html) 46 | 47 | -------------------------------------------------------------------------------- /notes/Docker.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、解决的问题](#一解决的问题) 3 | * [二、与虚拟机的比较](#二与虚拟机的比较) 4 | * [三、优势](#三优势) 5 | * [四、使用场景](#四使用场景) 6 | * [五、镜像与容器](#五镜像与容器) 7 | * [参考资料](#参考资料) 8 | 9 | 10 | 11 |

12 | 13 | # 一、解决的问题 14 | 15 | 由于不同的机器有不同的操作系统,以及不同的库和组件,在将一个应用部署到多台机器上需要进行大量的环境配置操作。 16 | 17 | Docker 主要解决环境配置问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程。使用 Docker 可以不修改应用程序代码,不需要开发人员学习特定环境下的技术,就能够将现有的应用程序部署在其他机器中。 18 | 19 | # 二、与虚拟机的比较 20 | 21 | 虚拟机也是一种虚拟化技术,它与 Docker 最大的区别在于它是通过模拟硬件,并在硬件上安装操作系统来实现。 22 | 23 |

24 | 25 |

26 | 27 | ## 启动速度 28 | 29 | 启动虚拟机需要启动虚拟机的操作系统,再启动应用,这个过程非常慢; 30 | 31 | 而启动 Docker 相当于启动宿主操作系统上的一个进程。 32 | 33 | ## 占用资源 34 | 35 | 虚拟机是一个完整的操作系统,需要占用大量的磁盘、内存和 CPU,一台机器只能开启几十个的虚拟机。 36 | 37 | 而 Docker 只是一个进程,只需要将应用以及相关的组件打包,在运行时占用很少的资源,一台机器可以开启成千上万个 Docker。 38 | 39 | # 三、优势 40 | 41 | 除了启动速度快以及占用资源少之外,Docker 具有以下优势: 42 | 43 | ## 更容易迁移 44 | 45 | 提供一致性的运行环境,可以在不同的机器上进行迁移,而不用担心环境变化导致无法运行。 46 | 47 | ## 更容易维护 48 | 49 | 使用分层技术和镜像,使得应用可以更容易复用重复部分。复用程度越高,维护工作也越容易。 50 | 51 | ## 更容易扩展 52 | 53 | 可以使用基础镜像进一步扩展得到新的镜像,并且官方和开源社区提供了大量的镜像,通过扩展这些镜像可以非常容易得到我们想要的镜像。 54 | 55 | # 四、使用场景 56 | 57 | ## 持续集成 58 | 59 | 持续集成指的是频繁地将代码集成到主干上,这样能够更快地发现错误。 60 | 61 | Docker 具有轻量级以及隔离性的特点,在将代码集成到一个 Docker 中不会对其它 Docker 产生影响。 62 | 63 | ## 提供可伸缩的云服务 64 | 65 | 根据应用的负载情况,可以很容易地增加或者减少 Docker。 66 | 67 | ## 搭建微服务架构 68 | 69 | Docker 轻量级的特点使得它很适合用于部署、维护、组合微服务。 70 | 71 | # 五、镜像与容器 72 | 73 | 镜像是一种静态的结构,可以看成面向对象里面的类,而容器是镜像的一个实例。 74 | 75 | 镜像包含着容器运行时所需要的代码以及其它组件,它是一种分层结构,每一层都是只读的(read-only layers)。构建镜像时,会一层一层构建,前一层是后一层的基础。镜像的这种分层存储结构很适合镜像的复用以及定制。 76 | 77 | 构建容器时,通过在镜像的基础上添加一个可写层(writable layer),用来保存着容器运行过程中的修改。 78 | 79 |

80 | 81 | # 参考资料 82 | 83 | - [DOCKER 101: INTRODUCTION TO DOCKER WEBINAR RECAP](https://blog.docker.com/2017/08/docker-101-introduction-docker-webinar-recap/) 84 | - [Docker 入门教程](http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html) 85 | - [Docker container vs Virtual machine](http://www.bogotobogo.com/DevOps/Docker/Docker_Container_vs_Virtual_Machine.php) 86 | - [How to Create Docker Container using Dockerfile](https://linoxide.com/linux-how-to/dockerfile-create-docker-container/) 87 | - [理解 Docker(2):Docker 镜像](http://www.cnblogs.com/sammyliu/p/5877964.html) 88 | - [为什么要使用 Docker?](https://yeasy.gitbooks.io/docker_practice/introduction/why.html) 89 | - [What is Docker](https://www.docker.com/what-docker) 90 | - [持续集成是什么?](http://www.ruanyifeng.com/blog/2015/09/continuous-integration.html) 91 | 92 | -------------------------------------------------------------------------------- /other/算法与数据结构.md: -------------------------------------------------------------------------------- 1 | # Algorithm 2 | leetcode/lintcode上的算法题 3 | 4 | **关于问题的答案和解体的思路,可以移步 : https://github.com/zhaozhengcoder/Algorithm** 5 | 6 | ### About 7 | 8 | 这个仓库最初的想法是把lintcode/lintocde上面的算法题目整理一下,因为很多题目太多了显得太乱了,就不继续在GitHub上面写了,以前写的一部分移到我的博客上面了。 9 | GitHub上面打算整理一些比较典型 或者是 自己思考过的觉得很好的问题。 10 | 11 | 12 | 在博客上面开了两个专栏 13 | 14 | 1. 数据结构/算法导论 : 15 | https://www.jianshu.com/nb/12397278 16 | 17 | 2. OJ练习题 : 18 | https://www.jianshu.com/nb/9973135 19 | 20 | 推荐两篇自己对 递归搜索和动态规划 的理解的blog : 21 | 22 | 1. https://www.jianshu.com/p/5eb4da919efe 23 | 24 | 2. https://www.jianshu.com/p/6b3a2304f63f 25 | 26 | 27 | 28 | ### 题目的索引 29 | GITHUB上面打算整理一些比较典型 或者是 自己思考过的觉得很好的问题。 30 | 31 | 1.从数据结构的角度索引 : 32 | 33 | a. 数组 34 | 35 | 两数之和 36 | 37 | 连续最大子数组 38 | 39 | 乘积最大子数组 40 | 41 | 买卖股票的最佳时机1,2,3 42 | 43 | 买卖股票的最佳时机1:寻找数组里面的最大上升子序列 44 | 买卖股票的最佳时机2:寻找数组里面所有的上升子序列 45 | 买卖股票的最佳时机3:寻找数组里面两个不重合的上升子序列,并且使他们的和最大 to-do 46 | 47 | 区间合并(将有交集的区间合并) 48 | 49 | 寻找缺失的数 50 | 51 | 1. 一个顺序的数组[1,2,3,5,6],缺少了一个数字,如何找到它? 52 | 53 | 2. 一个arr的数组,只有一个数字出现了一次,其他都出现了两次,如何找到它? 54 | 55 | 数组的近似划分(将一个数组分成两个,但是差最小) 56 | 57 | 数组里面第k大的数 58 | 59 | 跳跃游戏1,2 60 | 61 | 跳跃游戏1: 62 | 给出一个非负整数数组,你最初定位在数组的第一个位置, 63 | 数组中的每个元素代表你在那个位置可以跳跃的最大长度, 64 | 返回 是否能到达数组的最后一个位置 65 | 66 | 跳跃游戏2: 67 | 给出一个非负整数数组,你最初定位在数组的第一个位置, 68 | 数组中的每个元素代表你在那个位置可以跳跃的最大长度,    69 | 返回 使用最少的跳跃次数到达数组的最后一个位置 70 | 71 | a+. 二维矩阵 72 | 73 | 顺时针打印二维矩阵 74 | 75 | 给出一个二维矩阵,找到一个路径(从某个左上角到某个角右下)使这条路径的值最大 76 | 77 | b. 链表 78 | 79 | c. 字符串 80 | 81 | 最长公共子序列(并不是连续的) 82 | 83 | 最长回文子串 84 | 85 | d. 二叉树 86 | 87 | 返回一个平衡二叉树的第k大的节点 88 | 89 | 二叉树的最低公共祖先 90 | 91 | 非递归遍历二叉树 92 | 93 | e. 图 94 | 95 | 最短路径 96 | 97 | 深度/广度优先遍历 98 | 99 | 2. 从算法的角度建立索引 : 100 | 101 | a. 递归搜索问题 102 | 103 | N后问题 104 | 105 | 全排列 106 | 107 | 组合问题1,2 108 | 109 | b. 动态规划 110 | 111 | 背包问题1,2 112 | 113 | 数组的近似划分(将一个数组分成两个,但是差最小) 114 | 115 | 跳跃游戏1,2 116 | 117 | 给出一个二维矩阵,找到一个路径(从某个左上角到某个角右下)使这条路径的值最大 118 | 119 | 120 | 3. 常用 121 | 122 | a. 排列/组合 123 | 124 | b. 深度优先遍历 125 | 126 | c. 最短路径 127 | 128 | 4. 智力题(算法本身很简单,就是想不到的那种) 129 | 130 | 最多有多少个点在同一条直线上 131 | 132 | 133 | ### Others 134 | 135 | 1. 类似于系统设计的题目 136 | 137 | 带最小值的栈/队列 138 | 139 | url长链接转短链接 140 | 141 | 2. 解决特定问题 142 | 143 | 并查集 144 | 145 | 布隆过滤器 146 | 147 | 148 | 149 | 如果你对机器学习的算法感兴趣,欢迎共同讨论: 150 | 151 | https://github.com/zhaozhengcoder/Machine-Learning 152 | -------------------------------------------------------------------------------- /BOOKLIST.md: -------------------------------------------------------------------------------- 1 | # 数据结构与算法 2 | 3 | - [算法](https://book.douban.com/subject/19952400/) 4 | - [数据结构与算法分析](https://book.douban.com/subject/3351237/) 5 | - [编程珠玑](https://book.douban.com/subject/3227098/) 6 | - [剑指 Offer](https://book.douban.com/subject/25910559/) 7 | 8 | # 操作系统 9 | 10 | - [现代操作系统](https://book.douban.com/subject/3852290/) 11 | - [深入理解计算机系统](https://book.douban.com/subject/26912767/) 12 | - [鸟哥的 Linux 私房菜](https://book.douban.com/subject/4889838/) 13 | - [Unix 环境高级编程](https://book.douban.com/subject/25900403/) 14 | - [Unix/Linux 编程实践教程](https://book.douban.com/subject/1219329/) 15 | - [Operating Systems: Three Easy Pieces (OSTEP)](http://pages.cs.wisc.edu/~remzi/OSTEP/) 16 | 17 | # 计算机网络 18 | 19 | - [计算机网络](https://book.douban.com/subject/2970300/) 20 | - [计算机网络 自顶向下方法](https://book.douban.com/subject/1391207/) 21 | - [图解 HTTP](https://book.douban.com/subject/25863515/) 22 | - [TCP/IP 详解 卷 1:协议](https://book.douban.com/subject/1088054/) 23 | - [UNIX 网络编程](https://book.douban.com/subject/1500149/) 24 | - [Linux 多线程服务端编程](https://book.douban.com/subject/20471211/) 25 | 26 | # 面向对象 27 | 28 | - [Head First 设计模式](https://book.douban.com/subject/2243615/) 29 | - [设计模式 可复用面向对象软件的基础](https://book.douban.com/subject/1052241/) 30 | - [敏捷软件开发 原则、模式与实践](https://book.douban.com/subject/1140457/) 31 | 32 | # 数据库 33 | 34 | - [数据库系统概念](https://book.douban.com/subject/10548379/) 35 | - [MySQL 必知必会](https://book.douban.com/subject/3354490/) 36 | - [高性能 MySQL](https://book.douban.com/subject/23008813/) 37 | - [Redis 设计与实现](https://book.douban.com/subject/25900156/) 38 | - [Redis 实战](https://book.douban.com/subject/26612779/) 39 | 40 | # Java 41 | 42 | - [Java 编程思想](https://book.douban.com/subject/2130190/) 43 | - [Effective java 中文版](https://book.douban.com/subject/3360807/) 44 | - [深入Java虚拟机(原书第2版)](https://book.douban.com/subject/1138768/) 45 | - [深入理解 Java 虚拟机](https://book.douban.com/subject/24722612/) 46 | - [Java 并发编程实战](https://book.douban.com/subject/10484692/) 47 | - [精通 Spring 4.x](https://book.douban.com/subject/26952826/) 48 | - [Spring 揭秘](https://book.douban.com/subject/3897837/) 49 | 50 | # C++ 51 | 52 | - [C++ Primer](https://book.douban.com/subject/25708312/) 53 | - [Effective C++](https://book.douban.com/subject/1842426/) 54 | - [C++ 编程规范](https://book.douban.com/subject/1480481/) 55 | - [STL 源码剖析](https://book.douban.com/subject/1110934/) 56 | - [深度探索 C++ 对象模型](https://book.douban.com/subject/1091086/) 57 | 58 | # 系统设计 59 | 60 | - [大规模分布式存储系统](https://book.douban.com/subject/25723658/) 61 | - [从 Paxos 到 Zookeeper](https://book.douban.com/subject/26292004/) 62 | - [大型网站系统与 Java 中间件开发实践](https://book.douban.com/subject/25867042/) 63 | - [淘宝技术这十年](https://book.douban.com/subject/24335672/) 64 | - [深入理解 Nginx](https://book.douban.com/subject/22793675/) 65 | 66 | # 开发工具 67 | 68 | - [Pro Git](https://git-scm.com/book/zh/v2) 69 | - [正则表达式必知必会](https://book.douban.com/subject/2269648/) 70 | 71 | # 编码实践 72 | 73 | - [重构](https://book.douban.com/subject/4262627/) 74 | - [代码大全](https://book.douban.com/subject/1477390/) 75 | - [人月神话](https://book.douban.com/subject/1102259/) 76 | - [程序员的职业素养](https://book.douban.com/subject/11614538/) 77 | - [编写可读代码的艺术](https://book.douban.com/subject/10797189/) 78 | 79 | # 其它 80 | 81 | - [JavaScript 语言精粹](https://book.douban.com/subject/3590768/) 82 | - [利用 Python 进行数据分析](https://book.douban.com/subject/25779298/) 83 | - [概率论与数理统计](https://book.douban.com/subject/2201479/) 84 | -------------------------------------------------------------------------------- /notes/构建工具.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、构建工具的作用](#一构建工具的作用) 3 | * [二、Java 主流构建工具](#二java-主流构建工具) 4 | * [三、Maven](#三maven) 5 | * [参考资料](#参考资料) 6 | 7 | 8 | 9 | # 一、构建工具的作用 10 | 11 | 构建工具是用于构建项目的自动化工具,主要包含以下工作: 12 | 13 | ## 依赖管理 14 | 15 | 不再需要手动导入 Jar 依赖包,并且可以自动处理依赖关系,也就是说某个依赖如果依赖于其它依赖,构建工具可以帮助我们自动处理这种依赖管理。 16 | 17 | ## 运行单元测试 18 | 19 | 不再需要在项目代码中添加测试代码,从而避免了污染项目代码。 20 | 21 | ## 将源代码转化为可执行文件 22 | 23 | 包含预处理、编译、汇编、链接等步骤。 24 | 25 | ## 将可执行文件进行打包 26 | 27 | 不再需要使用 IDE 将应用程序打包成 Jar 包。 28 | 29 | ## 发布到生产服务器上 30 | 31 | 不再需要通过 FTP 将 Jar 包上传到服务器上。 32 | 33 | # 二、Java 主流构建工具 34 | 35 | 主要包括 Ant、Maven 和 Gradle。 36 | 37 |

38 | 39 | Gradle 和 Maven 的区别是,它使用 Groovy 这种特定领域语言(DSL)来管理构建脚本,而不再使用 XML 这种标记性语言。因为项目如果庞大的话,XML 很容易就变得臃肿。 40 | 41 | 例如要在项目中引入 Junit,Maven 的代码如下: 42 | 43 | ```xml 44 | 45 | 47 | 4.0.0 48 | 49 | jizg.study.maven.hello 50 | hello-first 51 | 0.0.1-SNAPSHOT 52 | 53 | 54 | 55 | junit 56 | junit 57 | 4.10 58 | test 59 | 60 | 61 | 62 | ``` 63 | 64 | 而 Gradle 只需要几行代码: 65 | 66 | ```java 67 | dependencies { 68 | testCompile "junit:junit:4.10" 69 | } 70 | ``` 71 | 72 | # 三、Maven 73 | 74 | ## 概述 75 | 76 | 提供了项目对象模型(POM)文件来管理项目的构建。 77 | 78 | ## 仓库 79 | 80 | 仓库的搜索顺序为:本地仓库、中央仓库、远程仓库。 81 | 82 | - 本地仓库用来存储项目的依赖库; 83 | - 中央仓库是下载依赖库的默认位置; 84 | - 远程仓库,因为并非所有的库存储在中央仓库,或者中央仓库访问速度很慢,远程仓库是中央仓库的补充。 85 | 86 | ## POM 87 | 88 | POM 代表项目对象模型,它是一个 XML 文件,保存在项目根目录的 pom.xml 文件中。 89 | 90 | ```xml 91 | 92 | junit 93 | junit 94 | 4.12 95 | test 96 | 97 | ``` 98 | 99 | [groupId, artifactId, version, packaging, classifier] 称为一个项目的坐标,其中 groupId、artifactId、version 必须定义,packaging 可选(默认为 Jar),classifier 不能直接定义的,需要结合插件使用。 100 | 101 | 102 | - groupId:项目组 Id,必须全球唯一; 103 | - artifactId:项目 Id,即项目名; 104 | - version:项目版本; 105 | - packaging:项目打包方式。 106 | 107 | ## 依赖原则 108 | 109 | ### 1. 依赖路径最短优先原则 110 | 111 | ```html 112 | A -> B -> C -> X(1.0) 113 | A -> D -> X(2.0) 114 | ``` 115 | 由于 X(2.0) 路径最短,所以使用 X(2.0)。 116 | 117 | ### 2. 声明顺序优先原则 118 | 119 | ```html 120 | A -> B -> X(1.0) 121 | A -> C -> X(2.0) 122 | ``` 123 | 124 | 在 POM 中最先声明的优先,上面的两个依赖如果先声明 B,那么最后使用 X(1.0)。 125 | 126 | ### 3. 覆写优先原则 127 | 128 | 子 POM 内声明的依赖优先于父 POM 中声明的依赖。 129 | 130 | ## 解决依赖冲突 131 | 132 | 找到 Maven 加载的 Jar 包版本,使用 `mvn dependency:tree` 查看依赖树,根据依赖原则来调整依赖在 POM 文件的声明顺序。 133 | 134 | # 参考资料 135 | 136 | - [POM Reference](http://maven.apache.org/pom.html#Dependency_Version_Requirement_Specification) 137 | - [What is a build tool?](https://stackoverflow.com/questions/7249871/what-is-a-build-tool) 138 | - [Java Build Tools Comparisons: Ant vs Maven vs Gradle](https://programmingmitra.blogspot.com/2016/05/java-build-tools-comparisons-ant-vs.html) 139 | - [maven 2 gradle](http://sagioto.github.io/maven2gradle/) 140 | - [新一代构建工具 gradle](https://www.imooc.com/learn/833) 141 | 142 | -------------------------------------------------------------------------------- /notes/Git.md: -------------------------------------------------------------------------------- 1 | 2 | * [集中式与分布式](#集中式与分布式) 3 | * [中心服务器](#中心服务器) 4 | * [工作流](#工作流) 5 | * [分支实现](#分支实现) 6 | * [冲突](#冲突) 7 | * [Fast forward](#fast-forward) 8 | * [分支管理策略](#分支管理策略) 9 | * [储藏(Stashing)](#储藏stashing) 10 | * [SSH 传输设置](#ssh-传输设置) 11 | * [.gitignore 文件](#gitignore-文件) 12 | * [Git 命令一览](#git-命令一览) 13 | * [参考资料](#参考资料) 14 | 15 | 16 | 17 | # 集中式与分布式 18 | 19 | Git 属于分布式版本控制系统,而 SVN 属于集中式。 20 | 21 | 集中式版本控制只有中心服务器拥有一份代码,而分布式版本控制每个人的电脑上就有一份完整的代码。 22 | 23 | 集中式版本控制有安全性问题,当中心服务器挂了所有人都没办法工作了。 24 | 25 | 集中式版本控制需要连网才能工作,如果网速过慢,那么提交一个文件的会慢的无法让人忍受。而分布式版本控制不需要连网就能工作。 26 | 27 | 分布式版本控制新建分支、合并分支操作速度非常快,而集中式版本控制新建一个分支相当于复制一份完整代码。 28 | 29 | # 中心服务器 30 | 31 | 中心服务器用来交换每个用户的修改,没有中心服务器也能工作,但是中心服务器能够 24 小时保持开机状态,这样就能更方便的交换修改。 32 | 33 | Github 就是一个中心服务器。 34 | 35 | # 工作流 36 | 37 |

38 | 39 | 新建一个仓库之后,当前目录就成为了工作区,工作区下有一个隐藏目录 .git,它属于 Git 的版本库。 40 | 41 | Git 版本库有一个称为 stage 的暂存区,还有自动创建的 master 分支以及指向分支的 HEAD 指针。 42 | 43 |

44 | 45 | - git add files 把文件的修改添加到暂存区 46 | - git commit 把暂存区的修改提交到当前分支,提交之后暂存区就被清空了 47 | - git reset -- files 使用当前分支上的修改覆盖暂存区,用来撤销最后一次 git add files 48 | - git checkout -- files 使用暂存区的修改覆盖工作目录,用来撤销本地修改 49 | 50 |

51 | 52 | 可以跳过暂存区域直接从分支中取出修改,或者直接提交修改到分支中。 53 | 54 | - git commit -a 直接把所有文件的修改添加到暂存区然后执行提交 55 | - git checkout HEAD -- files 取出最后一次修改,可以用来进行回滚操作 56 | 57 | # 分支实现 58 | 59 | 使用指针将每个提交连接成一条时间线,HEAD 指针指向当前分支指针。 60 | 61 |

62 | 63 | 新建分支是新建一个指针指向时间线的最后一个节点,并让 HEAD 指针指向新分支表示新分支成为当前分支。 64 | 65 |

66 | 67 | 每次提交只会让当前分支指针向前移动,而其它分支指针不会移动。 68 | 69 |

70 | 71 | 合并分支也只需要改变指针即可。 72 | 73 |

74 | 75 | # 冲突 76 | 77 | 当两个分支都对同一个文件的同一行进行了修改,在分支合并时就会产生冲突。 78 | 79 |

80 | 81 | Git 会使用 <<<<<<< ,======= ,>>>>>>> 标记出不同分支的内容,只需要把不同分支中冲突部分修改成一样就能解决冲突。 82 | 83 | ``` 84 | <<<<<<< HEAD 85 | Creating a new branch is quick & simple. 86 | ======= 87 | Creating a new branch is quick AND simple. 88 | >>>>>>> feature1 89 | ``` 90 | 91 | # Fast forward 92 | 93 | "快进式合并"(fast-farward merge),会直接将 master 分支指向合并的分支,这种模式下进行分支合并会丢失分支信息,也就不能在分支历史上看出分支信息。 94 | 95 | 可以在合并时加上 --no-ff 参数来禁用 Fast forward 模式,并且加上 -m 参数让合并时产生一个新的 commit。 96 | 97 | ``` 98 | $ git merge --no-ff -m "merge with no-ff" dev 99 | ``` 100 | 101 |

102 | 103 | # 分支管理策略 104 | 105 | master 分支应该是非常稳定的,只用来发布新版本; 106 | 107 | 日常开发在开发分支 dev 上进行。 108 | 109 |

110 | 111 | # 储藏(Stashing) 112 | 113 | 在一个分支上操作之后,如果还没有将修改提交到分支上,此时进行切换分支,那么另一个分支上也能看到新的修改。这是因为所有分支都共用一个工作区的缘故。 114 | 115 | 可以使用 git stash 将当前分支的修改储藏起来,此时当前工作区的所有修改都会被存到栈上,也就是说当前工作区是干净的,没有任何未提交的修改。此时就可以安全的切换到其它分支上了。 116 | 117 | ``` 118 | $ git stash 119 | Saved working directory and index state \ "WIP on master: 049d078 added the index file" 120 | HEAD is now at 049d078 added the index file (To restore them type "git stash apply") 121 | ``` 122 | 123 | 该功能可以用于 bug 分支的实现。如果当前正在 dev 分支上进行开发,但是此时 master 上有个 bug 需要修复,但是 dev 分支上的开发还未完成,不想立即提交。在新建 bug 分支并切换到 bug 分支之前就需要使用 git stash 将 dev 分支的未提交修改储藏起来。 124 | 125 | # SSH 传输设置 126 | 127 | Git 仓库和 Github 中心仓库之间的传输是通过 SSH 加密。 128 | 129 | 如果工作区下没有 .ssh 目录,或者该目录下没有 id_rsa 和 id_rsa.pub 这两个文件,可以通过以下命令来创建 SSH Key: 130 | 131 | ``` 132 | $ ssh-keygen -t rsa -C "youremail@example.com" 133 | ``` 134 | 135 | 然后把公钥 id_rsa.pub 的内容复制到 Github "Account settings" 的 SSH Keys 中。 136 | 137 | # .gitignore 文件 138 | 139 | 忽略以下文件: 140 | 141 | - 操作系统自动生成的文件,比如缩略图; 142 | - 编译生成的中间文件,比如 Java 编译产生的 .class 文件; 143 | - 自己的敏感信息,比如存放口令的配置文件。 144 | 145 | 不需要全部自己编写,可以到 [https://github.com/github/gitignore](https://github.com/github/gitignore) 中进行查询。 146 | 147 | # Git 命令一览 148 | 149 |

150 | 151 | 比较详细的地址:http://www.cheat-sheets.org/saved-copy/git-cheat-sheet.pdf 152 | 153 | # 参考资料 154 | 155 | - [Git - 简明指南](http://rogerdudler.github.io/git-guide/index.zh.html) 156 | - [图解 Git](http://marklodato.github.io/visual-git-guide/index-zh-cn.html) 157 | - [廖雪峰 : Git 教程](https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000) 158 | - [Learn Git Branching](https://learngitbranching.js.org/) 159 | -------------------------------------------------------------------------------- /notes/攻击技术.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、跨站脚本攻击](#一跨站脚本攻击) 3 | * [二、跨站请求伪造](#二跨站请求伪造) 4 | * [三、SQL 注入攻击](#三sql-注入攻击) 5 | * [四、拒绝服务攻击](#四拒绝服务攻击) 6 | * [参考资料](#参考资料) 7 | 8 | 9 | 10 | # 一、跨站脚本攻击 11 | 12 | ## 概念 13 | 14 | 跨站脚本攻击(Cross-Site Scripting, XSS),可以将代码注入到用户浏览的网页上,这种代码包括 HTML 和 JavaScript。 15 | 16 | ## 攻击原理 17 | 18 | 例如有一个论坛网站,攻击者可以在上面发布以下内容: 19 | 20 | ```html 21 | 22 | ``` 23 | 24 | 之后该内容可能会被渲染成以下形式: 25 | 26 | ```html 27 |

28 | ``` 29 | 30 | 另一个用户浏览了含有这个内容的页面将会跳转到 domain.com 并携带了当前作用域的 Cookie。如果这个论坛网站通过 Cookie 管理用户登录状态,那么攻击者就可以通过这个 Cookie 登录被攻击者的账号了。 31 | 32 | ## 危害 33 | 34 | - 窃取用户的 Cookie 35 | - 伪造虚假的输入表单骗取个人信息 36 | - 显示伪造的文章或者图片 37 | 38 | ## 防范手段 39 | 40 | ### 1. 设置 Cookie 为 HttpOnly 41 | 42 | 设置了 HttpOnly 的 Cookie 可以防止 JavaScript 脚本调用,就无法通过 document.cookie 获取用户 Cookie 信息。 43 | 44 | ### 2. 过滤特殊字符 45 | 46 | 例如将 `<` 转义为 `<`,将 `>` 转义为 `>`,从而避免 HTML 和 Jascript 代码的运行。 47 | 48 | 富文本编辑器允许用户输入 HTML 代码,就不能简单地将 `<` 等字符进行过滤了,极大地提高了 XSS 攻击的可能性。 49 | 50 | 富文本编辑器通常采用 XSS filter 来防范 XSS 攻击,通过定义一些标签白名单或者黑名单,从而不允许有攻击性的 HTML 代码的输入。 51 | 52 | 以下例子中,form 和 script 等标签都被转义,而 h 和 p 等标签将会保留。 53 | 54 | ```html 55 |

XSS Demo

56 | 57 |

123

58 | 59 |
60 | 61 |
62 | 63 |
hello
64 | 65 | 68 | ``` 69 | 70 | ```html 71 |

XSS Demo

72 | 73 |

123

74 | 75 | <form> 76 | <input type="text" name="q" value="test"> 77 | </form> 78 | 79 |
hello
80 | 81 | <script type="text/javascript"> 82 | alert(/xss/); 83 | </script> 84 | ``` 85 | 86 | > [XSS 过滤在线测试](http://jsxss.com/zh/try.html) 87 | 88 | # 二、跨站请求伪造 89 | 90 | ## 概念 91 | 92 | 跨站请求伪造(Cross-site request forgery,CSRF),是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并执行一些操作(如发邮件,发消息,甚至财产操作如转账和购买商品)。由于浏览器曾经认证过,所以被访问的网站会认为是真正的用户操作而去执行。 93 | 94 | XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户浏览器的信任。 95 | 96 | ## 攻击原理 97 | 98 | 假如一家银行用以执行转账操作的 URL 地址如下: 99 | 100 | ``` 101 | http://www.examplebank.com/withdraw?account=AccoutName&amount=1000&for=PayeeName。 102 | ``` 103 | 104 | 那么,一个恶意攻击者可以在另一个网站上放置如下代码: 105 | 106 | ``` 107 | 。 108 | ``` 109 | 110 | 如果有账户名为 Alice 的用户访问了恶意站点,而她之前刚访问过银行不久,登录信息尚未过期,那么她就会损失 1000 美元。 111 | 112 | 这种恶意的网址可以有很多种形式,藏身于网页中的许多地方。此外,攻击者也不需要控制放置恶意网址的网站。例如他可以将这种地址藏在论坛,博客等任何用户生成内容的网站中。这意味着如果服务器端没有合适的防御措施的话,用户即使访问熟悉的可信网站也有受攻击的危险。 113 | 114 | 通过例子能够看出,攻击者并不能通过 CSRF 攻击来直接获取用户的账户控制权,也不能直接窃取用户的任何信息。他们能做到的,是欺骗用户浏览器,让其以用户的名义执行操作。 115 | 116 | ## 防范手段 117 | 118 | ### 1. 检查 Referer 首部字段 119 | 120 | Referer 首部字段位于 HTTP 报文中,用于标识请求来源的地址。检查这个首部字段并要求请求来源的地址在同一个域名下,可以极大的防止 CSRF 攻击。 121 | 122 | 这种办法简单易行,工作量低,仅需要在关键访问处增加一步校验。但这种办法也有其局限性,因其完全依赖浏览器发送正确的 Referer 字段。虽然 HTTP 协议对此字段的内容有明确的规定,但并无法保证来访的浏览器的具体实现,亦无法保证浏览器没有安全漏洞影响到此字段。并且也存在攻击者攻击某些浏览器,篡改其 Referer 字段的可能。 123 | 124 | ### 2. 添加校验 Token 125 | 126 | 在访问敏感数据请求时,要求用户浏览器提供不保存在 Cookie 中,并且攻击者无法伪造的数据作为校验。例如服务器生成随机数并附加在表单中,并要求客户端传回这个随机数。 127 | 128 | ### 3. 输入验证码 129 | 130 | 因为 CSRF 攻击是在用户无意识的情况下发生的,所以要求用户输入验证码可以让用户知道自己正在做的操作。 131 | 132 | # 三、SQL 注入攻击 133 | 134 | ## 概念 135 | 136 | 服务器上的数据库运行非法的 SQL 语句,主要通过拼接来完成。 137 | 138 | ## 攻击原理 139 | 140 | 例如一个网站登录验证的 SQL 查询代码为: 141 | 142 | ```sql 143 | strSQL = "SELECT * FROM users WHERE (name = '" + userName + "') and (pw = '"+ passWord +"');" 144 | ``` 145 | 146 | 如果填入以下内容: 147 | 148 | ```sql 149 | userName = "1' OR '1'='1"; 150 | passWord = "1' OR '1'='1"; 151 | ``` 152 | 153 | 那么 SQL 查询字符串为: 154 | 155 | ```sql 156 | strSQL = "SELECT * FROM users WHERE (name = '1' OR '1'='1') and (pw = '1' OR '1'='1');" 157 | ``` 158 | 159 | 此时无需验证通过就能执行以下查询: 160 | 161 | ```sql 162 | strSQL = "SELECT * FROM users;" 163 | ``` 164 | 165 | ## 防范手段 166 | 167 | ### 1. 使用参数化查询 168 | 169 | Java 中的 PreparedStatement 是预先编译的 SQL 语句,可以传入适当参数并且多次执行。由于没有拼接的过程,因此可以防止 SQL 注入的发生。 170 | 171 | ```java 172 | PreparedStatement stmt = connection.prepareStatement("SELECT * FROM users WHERE userid=? AND password=?"); 173 | stmt.setString(1, userid); 174 | stmt.setString(2, password); 175 | ResultSet rs = stmt.executeQuery(); 176 | ``` 177 | 178 | ### 2. 单引号转换 179 | 180 | 将传入的参数中的单引号转换为连续两个单引号,PHP 中的 Magic quote 可以完成这个功能。 181 | 182 | # 四、拒绝服务攻击 183 | 184 | 拒绝服务攻击(denial-of-service attack,DoS),亦称洪水攻击,其目的在于使目标电脑的网络或系统资源耗尽,使服务暂时中断或停止,导致其正常用户无法访问。 185 | 186 | 分布式拒绝服务攻击(distributed denial-of-service attack,DDoS),指攻击者使用两个或以上被攻陷的电脑作为“僵尸”向特定的目标发动“拒绝服务”式攻击。 187 | 188 | # 参考资料 189 | 190 | - [维基百科:跨站脚本](https://zh.wikipedia.org/wiki/%E8%B7%A8%E7%B6%B2%E7%AB%99%E6%8C%87%E4%BB%A4%E7%A2%BC) 191 | - [维基百科:SQL 注入攻击](https://zh.wikipedia.org/wiki/SQL%E8%B3%87%E6%96%99%E9%9A%B1%E7%A2%BC%E6%94%BB%E6%93%8A) 192 | - [维基百科:跨站点请求伪造](https://zh.wikipedia.org/wiki/%E8%B7%A8%E7%AB%99%E8%AF%B7%E6%B1%82%E4%BC%AA%E9%80%A0) 193 | - [维基百科:拒绝服务攻击](https://zh.wikipedia.org/wiki/%E9%98%BB%E6%96%B7%E6%9C%8D%E5%8B%99%E6%94%BB%E6%93%8A) 194 | -------------------------------------------------------------------------------- /notes/集群.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、负载均衡](#一负载均衡) 3 | * [负载均衡算法](#负载均衡算法) 4 | * [转发实现](#转发实现) 5 | * [二、集群下的 Session 管理](#二集群下的-session-管理) 6 | * [Sticky Session](#sticky-session) 7 | * [Session Replication](#session-replication) 8 | * [Session Server](#session-server) 9 | 10 | 11 | 12 | # 一、负载均衡 13 | 14 | 集群中的应用服务器(节点)通常被设计成无状态,用户可以请求任何一个应用服务器。 15 | 16 | 负载均衡器会根据集群中每个节点的负载情况,将用户请求转发到合适的节点上。 17 | 18 | 负载均衡器可以用来实现高可用以及伸缩性: 19 | 20 | - 高可用:当某个节点故障时,负载均衡器会将用户请求转发到另外的节点上,从而保证所有服务持续可用; 21 | - 伸缩性:根据系统整体负载情况,可以很容易地添加移除节点。 22 | 23 | 负载均衡运行过程包含两个部分: 24 | 25 | 1. 根据负载均衡算法得到转发的节点; 26 | 2. 进行转发。 27 | 28 | ## 负载均衡算法 29 | 30 | ### 1. 轮询(Round Robin) 31 | 32 | 轮询算法把每个请求轮流发送到每个服务器上。 33 | 34 | 下图中,一共有 6 个客户端产生了 6 个请求,这 6 个请求按 (1, 2, 3, 4, 5, 6) 的顺序发送。(1, 3, 5) 的请求会被发送到服务器 1,(2, 4, 6) 的请求会被发送到服务器 2。 35 | 36 |

37 | 38 | 该算法比较适合每个服务器的性能差不多的场景,如果有性能存在差异的情况下,那么性能较差的服务器可能无法承担过大的负载(下图的 Server 2)。 39 | 40 |

41 | 42 | ### 2. 加权轮询(Weighted Round Robbin) 43 | 44 | 加权轮询是在轮询的基础上,根据服务器的性能差异,为服务器赋予一定的权值,性能高的服务器分配更高的权值。 45 | 46 | 例如下图中,服务器 1 被赋予的权值为 5,服务器 2 被赋予的权值为 1,那么 (1, 2, 3, 4, 5) 请求会被发送到服务器 1,(6) 请求会被发送到服务器 2。 47 | 48 |

49 | 50 | ### 3. 最少连接(least Connections) 51 | 52 | 由于每个请求的连接时间不一样,使用轮询或者加权轮询算法的话,可能会让一台服务器当前连接数过大,而另一台服务器的连接过小,造成负载不均衡。 53 | 54 | 例如下图中,(1, 3, 5) 请求会被发送到服务器 1,但是 (1, 3) 很快就断开连接,此时只有 (5) 请求连接服务器 1;(2, 4, 6) 请求被发送到服务器 2,只有 (2) 的连接断开,此时 (6, 4) 请求连接服务器 2。该系统继续运行时,服务器 2 会承担过大的负载。 55 | 56 |

57 | 58 | 最少连接算法就是将请求发送给当前最少连接数的服务器上。 59 | 60 | 例如下图中,服务器 1 当前连接数最小,那么新到来的请求 6 就会被发送到服务器 1 上。 61 | 62 |

63 | 64 | ### 4. 加权最少连接(Weighted Least Connection) 65 | 66 | 在最少连接的基础上,根据服务器的性能为每台服务器分配权重,再根据权重计算出每台服务器能处理的连接数。 67 | 68 |

69 | 70 | ### 5. 随机算法(Random) 71 | 72 | 把请求随机发送到服务器上。 73 | 74 | 和轮询算法类似,该算法比较适合服务器性能差不多的场景。 75 | 76 |

77 | 78 | ### 6. 源地址哈希法 (IP Hash) 79 | 80 | 源地址哈希通过对客户端 IP 计算哈希值之后,再对服务器数量取模得到目标服务器的序号。 81 | 82 | 可以保证同一 IP 的客户端的请求会转发到同一台服务器上,用来实现会话粘滞(Sticky Session) 83 | 84 |

85 | 86 | ## 转发实现 87 | 88 | ### 1. HTTP 重定向 89 | 90 | HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服务器的 IP 地址之后,将该地址写入 HTTP 重定向报文中,状态码为 302。客户端收到重定向报文之后,需要重新向服务器发起请求。 91 | 92 | 缺点: 93 | 94 | - 需要两次请求,因此访问延迟比较高; 95 | - HTTP 负载均衡器处理能力有限,会限制集群的规模。 96 | 97 | 该负载均衡转发的缺点比较明显,实际场景中很少使用它。 98 | 99 |

100 | 101 | ### 2. DNS 域名解析 102 | 103 | 在 DNS 解析域名的同时使用负载均衡算法计算服务器 IP 地址。 104 | 105 | 优点: 106 | 107 | - DNS 能够根据地理位置进行域名解析,返回离用户最近的服务器 IP 地址。 108 | 109 | 缺点: 110 | 111 | - 由于 DNS 具有多级结构,每一级的域名记录都可能被缓存,当下线一台服务器需要修改 DNS 记录时,需要过很长一段时间才能生效。 112 | 113 | 大型网站基本使用了 DNS 做为第一级负载均衡手段,然后在内部使用其它方式做第二级负载均衡。也就是说,域名解析的结果为内部的负载均衡服务器 IP 地址。 114 | 115 |

116 | 117 | ### 3. 反向代理服务器 118 | 119 | 反向代理服务器位于源服务器前面,用户的请求需要先经过反向代理服务器才能到达源服务器。反向代理可以用来进行缓存、日志记录等,同时也可以用来做为负载均衡服务器。 120 | 121 | 在这种负载均衡转发方式下,客户端不直接请求源服务器,因此源服务器不需要外部 IP 地址,而反向代理需要配置内部和外部两套 IP 地址。 122 | 123 | 优点: 124 | 125 | - 与其它功能集成在一起,部署简单。 126 | 127 | 缺点: 128 | 129 | - 所有请求和响应都需要经过反向代理服务器,它可能会成为性能瓶颈。 130 | 131 | ### 4. 网络层 132 | 133 | 在操作系统内核进程获取网络数据包,根据负载均衡算法计算源服务器的 IP 地址,并修改请求数据包的目的 IP 地址,最后进行转发。 134 | 135 | 源服务器返回的响应也需要经过负载均衡服务器,通常是让负载均衡服务器同时作为集群的网关服务器来实现。 136 | 137 | 优点: 138 | 139 | - 在内核进程中进行处理,性能比较高。 140 | 141 | 缺点: 142 | 143 | - 和反向代理一样,所有的请求和响应都经过负载均衡服务器,会成为性能瓶颈。 144 | 145 | ### 5. 链路层 146 | 147 | 在链路层根据负载均衡算法计算源服务器的 MAC 地址,并修改请求数据包的目的 MAC 地址,并进行转发。 148 | 149 | 通过配置源服务器的虚拟 IP 地址和负载均衡服务器的 IP 地址一致,从而不需要修改 IP 地址就可以进行转发。也正因为 IP 地址一样,所以源服务器的响应不需要转发回负载均衡服务器,可以直接转发给客户端,避免了负载均衡服务器的成为瓶颈。 150 | 151 | 这是一种三角传输模式,被称为直接路由。对于提供下载和视频服务的网站来说,直接路由避免了大量的网络传输数据经过负载均衡服务器。 152 | 153 | 这是目前大型网站使用最广负载均衡转发方式,在 Linux 平台可以使用的负载均衡服务器为 LVS(Linux Virtual Server)。 154 | 155 | 参考: 156 | 157 | - [Comparing Load Balancing Algorithms](http://www.jscape.com/blog/load-balancing-algorithms) 158 | - [Redirection and Load Balancing](http://slideplayer.com/slide/6599069/#) 159 | 160 | # 二、集群下的 Session 管理 161 | 162 | 一个用户的 Session 信息如果存储在一个服务器上,那么当负载均衡器把用户的下一个请求转发到另一个服务器,由于服务器没有用户的 Session 信息,那么该用户就需要重新进行登录等操作。 163 | 164 | ## Sticky Session 165 | 166 | 需要配置负载均衡器,使得一个用户的所有请求都路由到同一个服务器,这样就可以把用户的 Session 存放在该服务器中。 167 | 168 | 缺点: 169 | 170 | - 当服务器宕机时,将丢失该服务器上的所有 Session。 171 | 172 |

173 | 174 | ## Session Replication 175 | 176 | 在服务器之间进行 Session 同步操作,每个服务器都有所有用户的 Session 信息,因此用户可以向任何一个服务器进行请求。 177 | 178 | 缺点: 179 | 180 | - 占用过多内存; 181 | - 同步过程占用网络带宽以及服务器处理器时间。 182 | 183 |

184 | 185 | ## Session Server 186 | 187 | 使用一个单独的服务器存储 Session 数据,可以使用传统的 MySQL,也使用 Redis 或者 Memcached 这种内存型数据库。 188 | 189 | 优点: 190 | 191 | - 为了使得大型网站具有伸缩性,集群中的应用服务器通常需要保持无状态,那么应用服务器不能存储用户的会话信息。Session Server 将用户的会话信息单独进行存储,从而保证了应用服务器的无状态。 192 | 193 | 缺点: 194 | 195 | - 需要去实现存取 Session 的代码。 196 | 197 |

198 | 199 | 参考: 200 | 201 | - [Session Management using Spring Session with JDBC DataStore](https://sivalabs.in/2018/02/session-management-using-spring-session-jdbc-datastore/) 202 | 203 | -------------------------------------------------------------------------------- /notes/正则表达式.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、概述](#一概述) 3 | * [二、匹配单个字符](#二匹配单个字符) 4 | * [三、匹配一组字符](#三匹配一组字符) 5 | * [四、使用元字符](#四使用元字符) 6 | * [五、重复匹配](#五重复匹配) 7 | * [六、位置匹配](#六位置匹配) 8 | * [七、使用子表达式](#七使用子表达式) 9 | * [八、回溯引用](#八回溯引用) 10 | * [九、前后查找](#九前后查找) 11 | * [十、嵌入条件](#十嵌入条件) 12 | * [参考资料](#参考资料) 13 | 14 | 15 | 16 | # 一、概述 17 | 18 | 正则表达式用于文本内容的查找和替换。 19 | 20 | 正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或者软件。 21 | 22 | [正则表达式在线工具](https://regexr.com/) 23 | 24 | # 二、匹配单个字符 25 | 26 | **.** 可以用来匹配任何的单个字符,但是在绝大多数实现里面,不能匹配换行符; 27 | 28 | **.** 是元字符,表示它有特殊的含义,而不是字符本身的含义。如果需要匹配 . ,那么要用 \ 进行转义,即在 . 前面加上 \ 。 29 | 30 | 正则表达式一般是区分大小写的,但是也有些实现是不区分。 31 | 32 | **正则表达式** 33 | 34 | ``` 35 | nam. 36 | ``` 37 | 38 | **匹配结果** 39 | 40 | My **name** is Zheng. 41 | 42 | # 三、匹配一组字符 43 | 44 | **[ ]** 定义一个字符集合; 45 | 46 | 0-9、a-z 定义了一个字符区间,区间使用 ASCII 码来确定,字符区间在 [ ] 中使用。 47 | 48 | **-** 只有在 [ ] 之间才是元字符,在 [ ] 之外就是一个普通字符; 49 | 50 | **^** 在 [ ] 中是取非操作。 51 | 52 | **应用** 53 | 54 | 匹配以 abc 为开头,并且最后一个字母不为数字的字符串: 55 | 56 | **正则表达式** 57 | 58 | ``` 59 | abc[^0-9] 60 | ``` 61 | 62 | **匹配结果** 63 | 64 | 1. **abcd** 65 | 2. abc1 66 | 3. abc2 67 | 68 | # 四、使用元字符 69 | 70 | ## 匹配空白字符 71 | 72 | | 元字符 | 说明 | 73 | | :---: | :---: | 74 | | [\b] | 回退(删除)一个字符 | 75 | | \f | 换页符 | 76 | | \n | 换行符 | 77 | | \r | 回车符 | 78 | | \t | 制表符 | 79 | | \v | 垂直制表符 | 80 | 81 | \r\n 是 Windows 中的文本行结束标签,在 Unix/Linux 则是 \n。 82 | 83 | \r\n\r\n 可以匹配 Windows 下的空白行,因为它将匹配两个连续的行尾标签,而这正是两条记录之间的空白行; 84 | 85 | ## 匹配特定的字符类别 86 | 87 | ### 1. 数字元字符 88 | 89 | | 元字符 | 说明 | 90 | | :---: | :---: | 91 | | \d | 数字字符,等价于 [0-9] | 92 | | \D | 非数字字符,等价于 [^0-9] | 93 | 94 | ### 2. 字母数字元字符 95 | 96 | | 元字符 | 说明 | 97 | | :---: | :---: | 98 | | \w | 大小写字母,下划线和数字,等价于 [a-zA-Z0-9\_] | 99 | | \W | 对 \w 取非 | 100 | 101 | ### 3. 空白字符元字符 102 | 103 | | 元字符 | 说明 | 104 | | :---: | :---: | 105 | | \s | 任何一个空白字符,等价于 [\f\n\r\t\v] | 106 | | \S | 对 \s 取非 | 107 | 108 | \x 匹配十六进制字符,\0 匹配八进制,例如 \x0A 对应 ASCII 字符 10,等价于 \n。 109 | 110 | # 五、重复匹配 111 | 112 | - **\+** 匹配 1 个或者多个字符 113 | - **\** * 匹配 0 个或者多个 114 | - **?** 匹配 0 个或者 1 个 115 | 116 | **应用** 117 | 118 | 匹配邮箱地址。 119 | 120 | **正则表达式** 121 | 122 | ``` 123 | [\w.]+@\w+\.\w+ 124 | ``` 125 | 126 | [\w.] 匹配的是字母数字或者 . ,在其后面加上 + ,表示匹配多次。在字符集合 [ ] 里,. 不是元字符; 127 | 128 | **匹配结果** 129 | 130 | **abc.def@qq.com** 131 | 132 | - **{n}** 匹配 n 个字符 133 | - **{m, n}** 匹配 m\~n 个字符 134 | - **{m,}** 至少匹配 m 个字符 135 | 136 | \* 和 + 都是贪婪型元字符,会匹配最多的内容。在后面加 ? 可以转换为懒惰型元字符,例如 \*?、+? 和 {m, n}? 。 137 | 138 | **正则表达式** 139 | 140 | ``` 141 | a.+c 142 | ``` 143 | 144 | 由于 + 是贪婪型的,因此 .+ 会匹配更可能多的内容,所以会把整个 abcabcabc 文本都匹配,而不是只匹配前面的 abc 文本。用懒惰型可以实现匹配前面的。 145 | 146 | **匹配结果** 147 | 148 | **abcabcabc** 149 | 150 | # 六、位置匹配 151 | 152 | ## 单词边界 153 | 154 | **\b** 可以匹配一个单词的边界,边界是指位于 \w 和 \W 之间的位置;**\B** 匹配一个不是单词边界的位置。 155 | 156 | \b 只匹配位置,不匹配字符,因此 \babc\b 匹配出来的结果为 3 个字符。 157 | 158 | ## 字符串边界 159 | 160 | **^** 匹配整个字符串的开头,**$** 匹配结尾。 161 | 162 | ^ 元字符在字符集合中用作求非,在字符集合外用作匹配字符串的开头。 163 | 164 | 分行匹配模式(multiline)下,换行被当做字符串的边界。 165 | 166 | **应用** 167 | 168 | 匹配代码中以 // 开始的注释行 169 | 170 | **正则表达式** 171 | 172 | ``` 173 | ^\s*\/\/.*$ 174 | ``` 175 | 176 |

177 | 178 | **匹配结果** 179 | 180 | 1. public void fun() { 181 | 2.      **// 注释 1** 182 | 3.      int a = 1; 183 | 4.      int b = 2; 184 | 5.      **// 注释 2** 185 | 6.      int c = a + b; 186 | 7. } 187 | 188 | # 七、使用子表达式 189 | 190 | 使用 **( )** 定义一个子表达式。子表达式的内容可以当成一个独立元素,即可以将它看成一个字符,并且使用 * 等元字符。 191 | 192 | 子表达式可以嵌套,但是嵌套层次过深会变得很难理解。 193 | 194 | **正则表达式** 195 | 196 | ``` 197 | (ab){2,} 198 | ``` 199 | 200 | **匹配结果** 201 | 202 | **ababab** 203 | 204 | **|** 是或元字符,它把左边和右边所有的部分都看成单独的两个部分,两个部分只要有一个匹配就行。 205 | 206 | **正则表达式** 207 | 208 | ``` 209 | (19|20)\d{2} 210 | ``` 211 | 212 | **匹配结果** 213 | 214 | 1. **1900** 215 | 2. **2010** 216 | 3. 1020 217 | 218 | **应用** 219 | 220 | 匹配 IP 地址。 221 | 222 | IP 地址中每部分都是 0-255 的数字,用正则表达式匹配时以下情况是合法的: 223 | 224 | - 一位数字 225 | - 不以 0 开头的两位数字 226 | - 1 开头的三位数 227 | - 2 开头,第 2 位是 0-4 的三位数 228 | - 25 开头,第 3 位是 0-5 的三位数 229 | 230 | **正则表达式** 231 | 232 | ``` 233 | ((25[0-5]|(2[0-4]\d)|(1\d{2})|([1-9]\d)|(\d))\.){3}(25[0-5]|(2[0-4]\d)|(1\d{2})|([1-9]\d)|(\d)) 234 | ``` 235 | 236 | **匹配结果** 237 | 238 | 1. **192.168.0.1** 239 | 2. 00.00.00.00 240 | 3. 555.555.555.555 241 | 242 | # 八、回溯引用 243 | 244 | 回溯引用使用 **\n** 来引用某个子表达式,其中 n 代表的是子表达式的序号,从 1 开始。它和子表达式匹配的内容一致,比如子表达式匹配到 abc,那么回溯引用部分也需要匹配 abc 。 245 | 246 | **应用** 247 | 248 | 匹配 HTML 中合法的标题元素。 249 | 250 | **正则表达式** 251 | 252 | \1 将回溯引用子表达式 (h[1-6]) 匹配的内容,也就是说必须和子表达式匹配的内容一致。 253 | 254 | ``` 255 | <(h[1-6])>\w*?<\/\1> 256 | ``` 257 | 258 | **匹配结果** 259 | 260 | 1. **<h1>x</h1>** 261 | 2. **<h2>x</h2>** 262 | 3. <h3>x</h1> 263 | 264 | ## 替换 265 | 266 | 需要用到两个正则表达式。 267 | 268 | **应用** 269 | 270 | 修改电话号码格式。 271 | 272 | **文本** 273 | 274 | 313-555-1234 275 | 276 | **查找正则表达式** 277 | 278 | ``` 279 | (\d{3})(-)(\d{3})(-)(\d{4}) 280 | ``` 281 | 282 | **替换正则表达式** 283 | 284 | 在第一个子表达式查找的结果加上 () ,然后加一个空格,在第三个和第五个字表达式查找的结果中间加上 - 进行分隔。 285 | 286 | ``` 287 | ($1) $3-$5 288 | ``` 289 | 290 | **结果** 291 | 292 | (313) 555-1234 293 | 294 | ## 大小写转换 295 | 296 | | 元字符 | 说明 | 297 | | :---: | :---: | 298 | | \l | 把下个字符转换为小写 | 299 | | \u| 把下个字符转换为大写 | 300 | | \L | 把\L 和\E 之间的字符全部转换为小写 | 301 | | \U | 把\U 和\E 之间的字符全部转换为大写 | 302 | | \E | 结束\L 或者\U | 303 | 304 | **应用** 305 | 306 | 把文本的第二个和第三个字符转换为大写。 307 | 308 | **文本** 309 | 310 | abcd 311 | 312 | **查找** 313 | 314 | ``` 315 | (\w)(\w{2})(\w) 316 | ``` 317 | 318 | **替换** 319 | 320 | ``` 321 | $1\U$2\E$3 322 | ``` 323 | 324 | **结果** 325 | 326 | aBCd 327 | 328 | # 九、前后查找 329 | 330 | 前后查找规定了匹配的内容首尾应该匹配的内容,但是又不包含首尾匹配的内容。向前查找用 **?=** 来定义,它规定了尾部匹配的内容,这个匹配的内容在 ?= 之后定义。所谓向前查找,就是规定了一个匹配的内容,然后以这个内容为尾部向前面查找需要匹配的内容。向后匹配用 ?<= 定义(注: javaScript 不支持向后匹配, java 对其支持也不完善)。 331 | 332 | **应用** 333 | 334 | 查找出邮件地址 @ 字符前面的部分。 335 | 336 | **正则表达式** 337 | 338 | ``` 339 | \w+(?=@) 340 | ``` 341 | 342 | **结果** 343 | 344 | **abc** @qq.com 345 | 346 | 对向前和向后查找取非,只要把 = 替换成 ! 即可,比如 (?=) 替换成 (?!) 。取非操作使得匹配那些首尾不符合要求的内容。 347 | 348 | # 十、嵌入条件 349 | 350 | ## 回溯引用条件 351 | 352 | 条件判断为某个子表达式是否匹配,如果匹配则需要继续匹配条件表达式后面的内容。 353 | 354 | **正则表达式** 355 | 356 | 子表达式 (\\() 匹配一个左括号,其后的 ? 表示匹配 0 个或者 1 个。 ?(1) 为条件,当子表达式 1 匹配时条件成立,需要执行 \) 匹配,也就是匹配右括号。 357 | 358 | ``` 359 | (\()?abc(?(1)\)) 360 | ``` 361 | 362 | **结果** 363 | 364 | 1. **(abc)** 365 | 2. **abc** 366 | 3. (abc 367 | 368 | ## 前后查找条件 369 | 370 | 条件为定义的首尾是否匹配,如果匹配,则继续执行后面的匹配。注意,首尾不包含在匹配的内容中。 371 | 372 | **正则表达式** 373 | 374 | ?(?=-) 为前向查找条件,只有在以 - 为前向查找的结尾能匹配 \d{5} ,才继续匹配 -\d{4} 。 375 | 376 | ``` 377 | \d{5}(?(?=-)-\d{4}) 378 | ``` 379 | 380 | **结果** 381 | 382 | 1. **11111** 383 | 2. 22222- 384 | 3. **33333-4444** 385 | 386 | # 参考资料 387 | 388 | - BenForta. 正则表达式必知必会 [M]. 人民邮电出版社, 2007. 389 | -------------------------------------------------------------------------------- /notes/缓存.md: -------------------------------------------------------------------------------- 1 | 2 | * [一、缓存特征](#一缓存特征) 3 | * [二、LRU](#二lru) 4 | * [三、缓存位置](#三缓存位置) 5 | * [四、CDN](#四cdn) 6 | * [五、缓存问题](#五缓存问题) 7 | * [六、数据分布](#六数据分布) 8 | * [七、一致性哈希](#七一致性哈希) 9 | * [参考资料](#参考资料) 10 | 11 | 12 | 13 | # 一、缓存特征 14 | 15 | ## 命中率 16 | 17 | 当某个请求能够通过访问缓存而得到响应时,称为缓存命中。 18 | 19 | 缓存命中率越高,缓存的利用率也就越高。 20 | 21 | ## 最大空间 22 | 23 | 缓存通常位于内存中,内存的空间通常比磁盘空间小的多,因此缓存的最大空间不可能非常大。 24 | 25 | 当缓存存放的数据量超过最大空间时,就需要淘汰部分数据来存放新到达的数据。 26 | 27 | ## 淘汰策略 28 | 29 | - FIFO(First In First Out):先进先出策略,在实时性的场景下,需要经常访问最新的数据,那么就可以使用 FIFO,使得最先进入的数据(最晚的数据)被淘汰。 30 | 31 | - LRU(Least Recently Used):最近最久未使用策略,优先淘汰最久未使用的数据,也就是上次被访问时间距离现在最久的数据。该策略可以保证内存中的数据都是热点数据,也就是经常被访问的数据,从而保证缓存命中率。 32 | 33 | # 二、LRU 34 | 35 | 以下是基于 双向链表 + HashMap 的 LRU 算法实现,对算法的解释如下: 36 | 37 | - 访问某个节点时,将其从原来的位置删除,并重新插入到链表头部。这样就能保证链表尾部存储的就是最近最久未使用的节点,当节点数量大于缓存最大空间时就淘汰链表尾部的节点。 38 | - 为了使删除操作时间复杂度为 O(1),就不能采用遍历的方式找到某个节点。HashMap 存储着 Key 到节点的映射,通过 Key 就能以 O(1) 的时间得到节点,然后再以 O(1) 的时间将其从双向队列中删除。 39 | 40 | ```java 41 | public class LRU implements Iterable { 42 | 43 | private Node head; 44 | private Node tail; 45 | private HashMap map; 46 | private int maxSize; 47 | 48 | private class Node { 49 | 50 | Node pre; 51 | Node next; 52 | K k; 53 | V v; 54 | 55 | public Node(K k, V v) { 56 | this.k = k; 57 | this.v = v; 58 | } 59 | } 60 | 61 | 62 | public LRU(int maxSize) { 63 | 64 | this.maxSize = maxSize; 65 | this.map = new HashMap<>(maxSize * 4 / 3); 66 | 67 | head = new Node(null, null); 68 | tail = new Node(null, null); 69 | 70 | head.next = tail; 71 | tail.pre = head; 72 | } 73 | 74 | 75 | public V get(K key) { 76 | 77 | if (!map.containsKey(key)) { 78 | return null; 79 | } 80 | 81 | Node node = map.get(key); 82 | unlink(node); 83 | appendHead(node); 84 | 85 | return node.v; 86 | } 87 | 88 | 89 | public void put(K key, V value) { 90 | 91 | if (map.containsKey(key)) { 92 | Node node = map.get(key); 93 | unlink(node); 94 | } 95 | 96 | Node node = new Node(key, value); 97 | map.put(key, node); 98 | appendHead(node); 99 | 100 | if (map.size() > maxSize) { 101 | Node toRemove = removeTail(); 102 | map.remove(toRemove.k); 103 | } 104 | } 105 | 106 | 107 | private void unlink(Node node) { 108 | 109 | Node pre = node.pre; 110 | Node next = node.next; 111 | 112 | pre.next = next; 113 | next.pre = pre; 114 | 115 | node.pre = null; 116 | node.next = null; 117 | } 118 | 119 | 120 | private void appendHead(Node node) { 121 | Node next = head.next; 122 | node.next = next; 123 | next.pre = node; 124 | node.pre = head; 125 | head.next = node; 126 | } 127 | 128 | 129 | private Node removeTail() { 130 | 131 | Node node = tail.pre; 132 | 133 | Node pre = node.pre; 134 | tail.pre = pre; 135 | pre.next = tail; 136 | 137 | node.pre = null; 138 | node.next = null; 139 | 140 | return node; 141 | } 142 | 143 | 144 | @Override 145 | public Iterator iterator() { 146 | 147 | return new Iterator() { 148 | private Node cur = head.next; 149 | 150 | @Override 151 | public boolean hasNext() { 152 | return cur != tail; 153 | } 154 | 155 | @Override 156 | public K next() { 157 | Node node = cur; 158 | cur = cur.next; 159 | return node.k; 160 | } 161 | }; 162 | } 163 | } 164 | ``` 165 | 166 | # 三、缓存位置 167 | 168 | ## 浏览器 169 | 170 | 当 HTTP 响应允许进行缓存时,浏览器会将 HTML、CSS、JavaScript、图片等静态资源进行缓存。 171 | 172 | ## ISP 173 | 174 | 网络服务提供商(ISP)是网络访问的第一跳,通过将数据缓存在 ISP 中能够大大提高用户的访问速度。 175 | 176 | ## 反向代理 177 | 178 | 反向代理位于服务器之前,请求与响应都需要经过反向代理。通过将数据缓存在反向代理,在用户请求反向代理时就可以直接使用缓存进行响应。 179 | 180 | ## 本地缓存 181 | 182 | 使用 Guava Cache 将数据缓存在服务器本地内存中,服务器代码可以直接读取本地内存中的缓存,速度非常快。 183 | 184 | ## 分布式缓存 185 | 186 | 使用 Redis、Memcache 等分布式缓存将数据缓存在分布式缓存系统中。 187 | 188 | 相对于本地缓存来说,分布式缓存单独部署,可以根据需求分配硬件资源。不仅如此,服务器集群都可以访问分布式缓存,而本地缓存需要在服务器集群之间进行同步,实现难度和性能开销上都非常大。 189 | 190 | ## 数据库缓存 191 | 192 | MySQL 等数据库管理系统具有自己的查询缓存机制来提高查询效率。 193 | 194 | # 四、CDN 195 | 196 | 内容分发网络(Content distribution network,CDN)是一种互连的网络系统,它利用更靠近用户的服务器从而更快更可靠地将 HTML、CSS、JavaScript、音乐、图片、视频等静态资源分发给用户。 197 | 198 | CDN 主要有以下优点: 199 | 200 | - 更快地将数据分发给用户; 201 | - 通过部署多台服务器,从而提高系统整体的带宽性能; 202 | - 多台服务器可以看成是一种冗余机制,从而具有高可用性。 203 | 204 |

205 | 206 | # 五、缓存问题 207 | 208 | ## 缓存穿透 209 | 210 | 指的是对某个一定不存在的数据进行请求,该请求将会穿透缓存到达数据库。 211 | 212 | 解决方案: 213 | 214 | - 对这些不存在的数据缓存一个空数据; 215 | - 对这类请求进行过滤。 216 | 217 | ## 缓存雪崩 218 | 219 | 指的是由于数据没有被加载到缓存中,或者缓存数据在同一时间大面积失效(过期),又或者缓存服务器宕机,导致大量的请求都到达数据库。 220 | 221 | 在有缓存的系统中,系统非常依赖于缓存,缓存分担了很大一部分的数据请求。当发生缓存雪崩时,数据库无法处理这么大的请求,导致数据库崩溃。 222 | 223 | 解决方案: 224 | 225 | - 为了防止缓存在同一时间大面积过期导致的缓存雪崩,可以通过观察用户行为,合理设置缓存过期时间来实现; 226 | - 为了防止缓存服务器宕机出现的缓存雪崩,可以使用分布式缓存,分布式缓存中每一个节点只缓存部分的数据,当某个节点宕机时可以保证其它节点的缓存仍然可用。 227 | - 也可以进行缓存预热,避免在系统刚启动不久由于还未将大量数据进行缓存而导致缓存雪崩。 228 | 229 | ## 缓存一致性 230 | 231 | 缓存一致性要求数据更新的同时缓存数据也能够实时更新。 232 | 233 | 解决方案: 234 | 235 | - 在数据更新的同时立即去更新缓存; 236 | - 在读缓存之前先判断缓存是否是最新的,如果不是最新的先进行更新。 237 | 238 | 要保证缓存一致性需要付出很大的代价,缓存数据最好是那些对一致性要求不高的数据,允许缓存数据存在一些脏数据。 239 | 240 | # 六、数据分布 241 | 242 | ## 哈希分布 243 | 244 | 哈希分布就是将数据计算哈希值之后,按照哈希值分配到不同的节点上。例如有 N 个节点,数据的主键为 key,则将该数据分配的节点序号为:hash(key)%N。 245 | 246 | 传统的哈希分布算法存在一个问题:当节点数量变化时,也就是 N 值变化,那么几乎所有的数据都需要重新分布,将导致大量的数据迁移。 247 | 248 | ## 顺序分布 249 | 250 | 将数据划分为多个连续的部分,按数据的 ID 或者时间分布到不同节点上。例如 User 表的 ID 范围为 1 \~ 7000,使用顺序分布可以将其划分成多个子表,对应的主键范围为 1 \~ 1000,1001 \~ 2000,...,6001 \~ 7000。 251 | 252 | 顺序分布相比于哈希分布的主要优点如下: 253 | 254 | - 能保持数据原有的顺序; 255 | - 并且能够准确控制每台服务器存储的数据量,从而使得存储空间的利用率最大。 256 | 257 | # 七、一致性哈希 258 | 259 | Distributed Hash Table(DHT) 是一种哈希分布方式,其目的是为了克服传统哈希分布在服务器节点数量变化时大量数据迁移的问题。 260 | 261 | ## 基本原理 262 | 263 | 将哈希空间 [0, 2n-1] 看成一个哈希环,每个服务器节点都配置到哈希环上。每个数据对象通过哈希取模得到哈希值之后,存放到哈希环中顺时针方向第一个大于等于该哈希值的节点上。 264 | 265 |

266 | 267 | 一致性哈希在增加或者删除节点时只会影响到哈希环中相邻的节点,例如下图中新增节点 X,只需要将它前一个节点 C 上的数据重新进行分布即可,对于节点 A、B、D 都没有影响。 268 | 269 |

270 | 271 | ## 虚拟节点 272 | 273 | 上面描述的一致性哈希存在数据分布不均匀的问题,节点存储的数据量有可能会存在很大的不同。 274 | 275 | 数据不均匀主要是因为节点在哈希环上分布的不均匀,这种情况在节点数量很少的情况下尤其明显。 276 | 277 | 解决方式是通过增加虚拟节点,然后将虚拟节点映射到真实节点上。虚拟节点的数量比真实节点来得多,那么虚拟节点在哈希环上分布的均匀性就会比原来的真实节点好,从而使得数据分布也更加均匀。 278 | 279 | # 参考资料 280 | 281 | - 大规模分布式存储系统 282 | - [缓存那些事](https://tech.meituan.com/cache_about.html) 283 | - [一致性哈希算法](https://my.oschina.net/jayhu/blog/732849) 284 | - [内容分发网络](https://zh.wikipedia.org/wiki/%E5%85%A7%E5%AE%B9%E5%82%B3%E9%81%9E%E7%B6%B2%E8%B7%AF) 285 | - [How Aspiration CDN helps to improve your website loading speed?](https://www.aspirationhosting.com/aspiration-cdn/) 286 | --------------------------------------------------------------------------------