Top Banner
60

Handson Nodejs

Dec 29, 2015

Download

Documents

Kifayat Msd

Posted by Kifayat Ullah Maseed
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Handson Nodejs
Page 2: Handson Nodejs

+DQGV�RQ 1RGH�MV

3HGUR 7HL[HLUD

7KLV ERRN LV IRU VDOH DW KWWS���OHDQSXE�FRP�KDQGV�RQ�QRGHMV

7KLV YHUVLRQ ZDV SXEOLVKHG RQ ����������

7KLV LV D /HDQSXE ERRN� /HDQSXE HPSRZHUV DXWKRUV DQG SXEOLVKHUV ZLWK WKH /HDQ 3XEOLVKLQJSURFHVV� /HDQ 3XEOLVKLQJ LV WKH DFW RI SXEOLVKLQJ DQ LQ�SURJUHVV HERRN XVLQJ OLJKWZHLJKW WRROV DQGPDQ\ LWHUDWLRQV WR JHW UHDGHU IHHGEDFN� SLYRW XQWLO \RX KDYH WKH ULJKW ERRN DQG EXLOG WUDFWLRQ RQFH\RX GR�

k���� � ���� 3HGUR 7HL[HLUD

Page 3: Handson Nodejs

7ZHHW 7KLV %RRN�3OHDVH KHOS 3HGUR 7HL[HLUD E\ VSUHDGLQJ WKH ZRUG DERXW WKLV ERRN RQ 7ZLWWHU�

7KH VXJJHVWHG KDVKWDJ IRU WKLV ERRN LV �KDQGV�RQ�QRGHMV�

)LQG RXW ZKDW RWKHU SHRSOH DUH VD\LQJ DERXW WKH ERRN E\ FOLFNLQJ RQ WKLV OLQN WR VHDUFK IRU WKLVKDVKWDJ RQ 7ZLWWHU�

KWWSV���WZLWWHU�FRP�VHDUFK"T �KDQGV�RQ�QRGHMV

Page 4: Handson Nodejs

&RQWHQWV

,QWURGXFWLRQ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �:K\ WKH VXGGHQ� H[SRQHQWLDO SRSXODULW\" � � � � � � � � � � � � � � � � � � � � � � � � � � � �:KDW GRHV WKLV ERRN FRYHU" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �:KDW GRHV WKLV ERRN QRW FRYHU" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �3UHUHTXLVLWHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �6RXUFH FRGH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �:KHUH ZLOO WKLV ERRN OHDG \RX" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

:K\" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �:K\ WKH HYHQW ORRS" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

6ROXWLRQ �� &UHDWH PRUH FDOO VWDFNV � � � � � � � � � � � � � � � � � � � � � � � � � � � � �6ROXWLRQ �� 8VH HYHQW�GULYHQ ,�2 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

:K\ -DYD6FULSW" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �+RZ , /HDUQHG WR 6WRS )HDULQJ DQG /RYH -DYD6FULSW � � � � � � � � � � � � � � � � � � � �

)XQFWLRQ 'HFODUDWLRQ 6W\OHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � �)XQFWLRQV DUH ILUVW�FODVV REMHFWV � � � � � � � � � � � � � � � � � � � � � � � � � � ��

-6+LQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��-DYD6FULSW YHUVLRQV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

5HIHUHQFHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

6WDUWLQJ XS � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��,QVWDOO 1RGH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

8QGHUVWDQGLQJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��8QGHUVWDQGLQJ WKH 1RGH HYHQW ORRS � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

$Q HYHQW�TXHXH SURFHVVLQJ ORRS � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&DOOEDFNV WKDW ZLOO JHQHUDWH HYHQWV � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��'RQ٧W EORFN� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

0RGXOHV DQG 130 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��0RGXOHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

+RZ 1RGH UHVROYHV D PRGXOH SDWK � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&RUH PRGXOHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

Page 5: Handson Nodejs

&217(176

0RGXOHV ZLWK FRPSOHWH RU UHODWLYH SDWK � � � � � � � � � � � � � � � � � � � � � � ��$V D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$V D GLUHFWRU\ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$V DQ LQVWDOOHG PRGXOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

130 � 1RGH 3DFNDJH 0DQDJHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��*OREDO YV� /RFDO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��130 FRPPDQGV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

QSP OV >ILOWHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��QSP LQVWDOO SDFNDJH>#ILOWHUV � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��QSP UP SDFNDJHBQDPH>#YHUVLRQ � � � � � � � � � � � � � � � � � � � � � � � � � ��QSP YLHZ ># � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7KH 3DFNDJH�MVRQ 0DQLIHVW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

8WLOLWLHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��FRQVROH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��XWLO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

%XIIHUV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��6OLFH D EXIIHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&RS\ D EXIIHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��%XIIHU ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

(YHQW (PLWWHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DGG/LVWHQHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���RQFH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���UHPRYH$OO/LVWHQHUV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&UHDWLQJ DQ (YHQW (PLWWHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��(YHQW (PLWWHU ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7LPHUV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��VHW7LPHRXW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��FOHDU7LPHRXW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��VHW,QWHUYDO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��FOHDU,QWHUYDO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��VHW,PPHGLDWH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

(VFDSLQJ WKH HYHQW ORRS � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$ QRWH RQ WDLO UHFXUVLRQ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

/RZ�OHYHO ILOH�V\VWHP � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

Page 6: Handson Nodejs

&217(176

IV�VWDW DQG IV�IVWDW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��2SHQ D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��5HDG IURP D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��:ULWH LQWR D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

&ORVH <RXU ILOHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��)LOH�V\VWHP ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � JHW WKH VL]H RI D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � UHDG D FKXQN IURP D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � UHDG WZR FKXQNV IURP D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � 2YHUZULWH D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � DSSHQG WR D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � FKDQJH WKH FRQWHQW RI D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � ��

+773 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��+773 6HUYHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7KH KWWS�6HUYHU5HTXHVW REMHFW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��UHT�XUO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��UHT�PHWKRG � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��UHT�KHDGHUV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��7KH KWWS�6HUYHU5HVSRQVH REMHFW � � � � � � � � � � � � � � � � � � � � � � � � � � ��

:ULWH D KHDGHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&KDQJH RU VHW D KHDGHU � � � � � � � � � � � � � � � � � � � � � � � � � � � ��5HPRYH D KHDGHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��:ULWH D SLHFH RI WKH UHVSRQVH ERG\ � � � � � � � � � � � � � � � � � � � � � ��

+773 &OLHQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��KWWS�JHW�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

KWWS�UHTXHVW�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��+773 ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

6WUHDPV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��5HDG6WUHDP � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

:DLW IRU GDWD � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��.QRZ ZKHQ LW HQGV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��3DXVH LW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��5HVXPH LW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

:ULWH6WUHDP � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��:ULWH WR LW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��:DLW IRU LW WR GUDLQ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

6RPH VWUHDP H[DPSOHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

Page 7: Handson Nodejs

&217(176

)LOHV\VWHP VWUHDPV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��1HWZRUN VWUHDPV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7KH 6ORZ &OLHQW 3UREOHP DQG %DFN�SUHVVXUH � � � � � � � � � � � � � � � � � � � � � � � � � ��:KDW FDQ ZH GR" � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��3LSH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7&3 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��:ULWH D VWULQJ RU D EXIIHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��HQG � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DQGٴ DOO WKH RWKHU PHWKRGV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��,GOH VRFNHWV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��.HHS�DOLYH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��'HOD\ RU QR GHOD\ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��VHUYHU�FORVH�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��/LVWHQLQJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��7&3 FOLHQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��(UURU KDQGOLQJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��7&3 ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

'DWDJUDPV �8'3� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��'DWDJUDP VHUYHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��'DWDJUDP FOLHQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��'DWDJUDP 0XOWLFDVW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

5HFHLYLQJ PXOWLFDVW PHVVDJHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��6HQGLQJ PXOWLFDVW PHVVDJHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��:KDW FDQ EH WKH GDWDJUDP PD[LPXP VL]H" � � � � � � � � � � � � � � � � � � � � � � � � ��

8'3 ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

&KLOG SURFHVVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HFXWLQJ FRPPDQGV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��6SDZQLQJ SURFHVVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��.LOOLQJ SURFHVVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&KLOG 3URFHVVHV ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

6WUHDPLQJ +773 FKXQNHG UHVSRQVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$ VWUHDPLQJ H[DPSOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

6WUHDPLQJ ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7/6 � 66/ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

Page 8: Handson Nodejs

&217(176

3XEOLF � SULYDWH NH\V � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��3ULYDWH NH\ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��3XEOLF NH\ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

7/6 &OLHQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��7/6 6HUYHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

9HULILFDWLRQ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��7/6 ([HUFLVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

+7736 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��+7736 6HUYHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��+7736 &OLHQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

0DNLQJ PRGXOHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��&RPPRQ-6 PRGXOHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��2QH ILOH PRGXOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$Q DJJUHJDWLQJ PRGXOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$ SVHXGR�FODVV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$ SVHXGR�FODVV WKDW LQKHULWV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��QRGHBPRGXOHV DQG QSP EXQGOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

%XQGOLQJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

'HEXJJLQJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��FRQVROH�ORJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��1RGH EXLOW�LQ GHEXJJHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��1RGH ,QVSHFWRU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��/LYH HGLW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

$XWRPDWHG 8QLW 7HVWLQJ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$ WHVW UXQQHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$VVHUWLRQ WHVWLQJ PRGXOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

VKRXOG�MV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��$VVHUW WUXWKIXOQHVV� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��RU XQWUXWKIXOQHVV� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� WUXH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �� IDOVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��HPSWLQHVV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��HTXDOLW\ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��HTXDO �VWULFW HTXDOLW\� � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DVVHUW QXPHULF UDQJH �LQFOXVLYH� ZLWK ZLWKLQ � � � � � � � � � � � � � � � � ��

Page 9: Handson Nodejs

&217(176

WHVW QXPHULF YDOXH LV DERYH JLYHQ YDOXH� � � � � � � � � � � � � � � � � � � ��WHVW QXPHULF YDOXH LV EHORZ JLYHQ YDOXH� � � � � � � � � � � � � � � � � � � ��PDWFKLQJ UHJXODU H[SUHVVLRQV � � � � � � � � � � � � � � � � � � � � � � � � ��WHVW OHQJWK � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��VXEVWULQJ LQFOXVLRQ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DVVHUW W\SHRI � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��SURSHUW\ H[LVWHQFH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DUUD\ FRQWDLQPHQW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��RZQ REMHFW NH\V � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��UHVSRQGV WR� DVVHUWLQJ WKDW D JLYHQ SURSHUW\ LV D IXQFWLRQ� � � � � � � � � � ��

3XWWLQJ LW DOO WRJHWKHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

&DOOEDFN IORZ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��7KH ERRPHUDQJ HIIHFW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��8VLQJ FDRODQ�DV\QF � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

&ROOHFWLRQV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��3DUDOOHO ,WHUDWLRQV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DV\QF�IRU(DFK � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DV\QF�PDS � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��DV\QF�IRU(DFK/LPLW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�ILOWHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�UHMHFW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�UHGXFH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�GHWHFW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�VRPH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�HYHU\ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

)ORZ &RQWURO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�VHULHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�SDUDOOHO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�ZKLOVW � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�XQWLO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�ZDWHUIDOO � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���DV\QF�TXHXH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

$SSHQGL[ � ([HUFLVH 5HVXOWV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���&KDSWHU� %XIIHUV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

&KDSWHU� (YHQW (PLWWHU � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

Page 10: Handson Nodejs

&217(176

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

&KDSWHU� /RZ�OHYHO )LOH 6\VWHP � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � JHW WKH VL]H RI D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � UHDG D FKXQN IURP D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � UHDG WZR FKXQNV IURP D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � 2YHUZULWH D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � DSSHQG WR D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � FKDQJH WKH FRQWHQW RI D ILOH � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���&KDSWHU� +773 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

&KDSWHU� &KLOG SURFHVVHV � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���&KDSWHU� 6WUHDPLQJ +773 &KXQNHG UHVSRQVHV � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

&KDSWHU� 8'3 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���&KDSWHU� 7&3 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

&KDSWHU� 66/ � 7/6 � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

Page 11: Handson Nodejs

&217(176

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���([HUFLVH � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

2QH 6ROXWLRQ� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

Page 12: Handson Nodejs

ΖQWURGXFWLRQ$W WKH (XURSHDQ -6&RQI ����� D \RXQJ SURJUDPPHU E\ WKH QDPH RI 5\DQ 'DKO� LQWURGXFHG D SURMHFWKH KDG EHHQ ZRUNLQJ RQ� 7KLV SURMHFW ZDV D SODWIRUP WKDW FRPELQHG *RRJOH٧V 9� -DYD6FULSW HQJLQHDQG DQ HYHQW ORRS WR FUHDWH D VHUYHU�VLGH SODWIRUP SURJUDPPDEOH LQ -DYD6FULSW� 7KH SURMHFW WRRN DGLIIHUHQW GLUHFWLRQ IURP RWKHU VHUYHU�VLGH -DYD6FULSW SODWIRUPV� DOO ,�2 SULPLWLYHV ZHUH HYHQW�GULYHQ�DQG WKHUH ZDV QR ZD\ DURXQG LW� /HYHUDJLQJ WKH SRZHU DQG VLPSOLFLW\ RI -DYD6FULSW� LW WXUQHG WKHGLIILFXOW WDVN RI ZULWLQJ DV\QFKURQRXV DSSOLFDWLRQV LQWR DQ HDV\ RQH� 6LQFH UHFHLYLQJ D VWDQGLQJRYDWLRQ DW WKH HQG RI KLV WDON� 'DKO٧V SURMHFW KDV EHHQ PHW ZLWK XQSUHFHGHQWHG JURZWK� SRSXODULW\DQG DGRSWLRQ�

7KH SURMHFW ZDV QDPHG 1RGH�MV� QRZ NQRZQ WR GHYHORSHUV VLPSO\ DV ٦1RGH٧� 1RGH SURYLGHV SXUHO\HYHQWHG� QRQ�EORFNLQJ LQIUDVWUXFWXUH IRU EXLOGLQJ KLJKO\ FRQFXUUHQW VRIWZDUH�

1RGH DOORZV \RX WR HDVLO\ FRQVWUXFW IDVW DQG VFDODEOH QHWZRUN VHUYLFHV�

:K\ WKH VXGGHQ� H[SRQHQWLDO SRSXODULW\"

6HUYHU�VLGH -DYD6FULSW KDV EHHQ DURXQG IRU VRPH WLPH� ZKDW PDNHV WKLV SODWIRUP VR DSSHDOLQJ"

,Q SUHYLRXV VHUYHU�VLGH -DYD6FULSW LPSOHPHQWDWLRQV� MDYDVFULSW ZDV WKH UDLVRQ GHWUH� DQG WKHDSSURDFK IRFXVVHG RQ WUDQVODWLQJ FRPPRQ SUDFWLFHV IURP RWKHU SODWIRUPV OLNH 5XE\� 3(5/ DQG3\WKRQ� LQWR -DYD6FULSW� 1RGH WRRN D OHDS IURP WKLV DQG VDLG� ٪/HW٧V XVH WKH VXFFHVVIXO HYHQW�GULYHQSURJUDPPLQJ PRGHO RI WKH ZHE DQG XVH LW WR PDNH DQ HDV\ ZD\ WR EXLOG VFDODEOH VHUYHUV� $QG OHW٧VPDNH LW WKH RQO\ ZD\ SHRSOH FDQ GR DQ\WKLQJ RQ WKLV SODWIRUP�٫�

,W FDQ EH DUJXHG WKDW -DYD6FULSW LWVHOI FRQWULEXWHG WR PXFK RI 1RGH٧V VXFFHVV� EXW WKDW ZRXOG QRWH[SODLQ ZK\ RWKHU WKH VHUYHU�VLGH SURMHFWV SURFHHGLQJ 1RGH KDYH QRW \HW FRPH FORVH LQ SRSXODULW\�7KH XELTXLW\ RI -DYD6FULSW VXUHO\ KDV SOD\HG D UROH� EXW� DV 5\DQ 'DKO SRLQWV RXW� XQOLNH RWKHU 6HUYHU�VLGH -DYD6FULSW DWWHPSWV� XQLI\LQJ WKH FOLHQW DQG VHUYHU LQWR D FRPPRQ ODQJXDJH ZDV QRW WKH SULPDU\JRDO IRU 1RGH�

,Q P\ SHUVSHFWLYH WKHUH DUH WKUHH IDFWRUV FRQWULEXWLQJ WR 1RGH٧V VXFFHVV�

�� 1RGH LV (DV\ � 1RGH PDNHV HYHQW�GULYHQ ,�2 SURJUDPPLQJ� WKH EHVW ZD\ WR GR ,�2 SURJUDP�PLQJ� PXFK HDVLHU WR XQGHUVWDQG DQG DFKLHYH WKDQ LQ DQ\ RWKHU H[LVWLQJ SODWIRUP�

�� 1RGH LV /HDQ � 1RGH GRHV QRW WU\ WR VROYH DOO SUREOHPV� ,W OD\V WKH IRXQGDWLRQ DQG VXSSRUWVWKH EDVLF LQWHUQHW SURWRFROV XVLQJ FOHDQ� IXQFWLRQDO $3,V�

�� 1RGH GRHV QRW &RPSURPLVH � 1RGH GRHV QRW WU\ WR EH FRPSDWLEOH ZLWK SUH�H[LVWLQJ VRIWZDUH�LW WDNHV D IUHVK ORRN DW ZKDW PDQ\ EHOLHYH LV WKH ULJKW GLUHFWLRQ�

Page 13: Handson Nodejs

,QWURGXFWLRQ �

:KDW GRHV WKLV ERRN FRYHU"

:H ZLOO DQDO\]H ZKDW PDNHV 1RGH D GLIIHUHQW SURSRVDO WR RWKHU VHUYHU�VLGH VROXWLRQV� ZK\ \RXVKRXOG XVH LW� DQG KRZ WR JHW VWDUWHG� :H ZLOO VWDUW ZLWK DQ RYHUYLHZ EXW TXLFNO\ GLYH LQWR VRPHFRGH PRGXOH�E\�PRGXOH� %\ WKH HQG RI WKLV ERRN \RX VKRXOG EH DEOH WR EXLOG DQG WHVW \RXU RZQ1RGH PRGXOHV� VHUYLFH SURGXFHUV�FRQVXPHUV DQG IHHO FRPIRUWDEOH XVLQJ 1RGH٧V FRQYHQWLRQV DQG$3,�

:KDW GRHV WKLV ERRN QRW FRYHU"

7KLV ERRN GRHV QRW DWWHPSW WR FRYHU WKH FRPSOHWH 1RGH $3,� ,QVWHDG� ZH ZLOO FRYHU ZKDW WKH DXWKRUWKLQNV LV UHTXLUHG WR EXLOG PRVW DSSOLFDWLRQV KH ZRXOG EXLOG RQ 1RGH�

7KLV ERRN GRHV QRW FRYHU DQ\ 1RGH IUDPHZRUNV� 1RGH LV D JUHDW WRRO IRU EXLOGLQJ IUDPHZRUNV DQGPDQ\ DUH DYDLODEOH� VXFK DV FOXVWHU PDQDJHPHQW� LQWHU�SURFHVV FRPPXQLFDWLRQ� ZHE IUDPHZRUNV�QHWZRUN WUDIILF FROOHFWLRQ WRROV� JDPH HQJLQHV DQG PDQ\ RWKHUV� %HIRUH \RX GLYH LQWR DQ\ RI WKRVH\RX VKRXOG EH IDPLOLDU ZLWK 1RGH٧V LQIUDVWUXFWXUH DQG ZKDW LW SURYLGHV WR WKHVH EXLOGLQJ EORFNV�

3UHUHTXLVLWHV

7KLV ERRN GRHV QRW DVVXPH \RX KDYH DQ\ SULRU NQRZOHGJH RI 1RGH� EXW WKH FRGH H[DPSOHV DUH ZULWWHQLQ -DYD6FULSW� VR IDPLOLDULW\ ZLWK WKH -DYD6FULSW ODQJXDJH ZLOO KHOS�

([HUFLVHV

7KLV ERRN KDV H[HUFLVHV LQ VRPH FKDSWHUV� $W WKH HQG RI WKLV ERRN \RX FDQ ILQG WKH H[HUFLVHVROXWLRQV� EXW , DGYLVH \RX WR WU\ GR WKHP \RXUVHOI� &RQVXOW WKLV ERRN RU XVH WKH FRPSUHKHQVLYH$3, GRFXPHQWDWLRQ RQ WKH RIILFLDO KWWS���QRGHMV�RUJ{ ZHEVLWH�

6RXUFH FRGH

<RX FDQ ILQG VRPH RI WKH VRXUFH FRGH DQG H[HUFLVHV XVHG LQ WKLV ERRN RQ *LW+XE�

KWWSV���JLWKXE�FRP�SJWH�KDQGVRQBQRGHMVBVRXUFHBFRGHt

RU \RX FDQ GRZQORDG LW GLUHFWO\�

KWWSV���JLWKXE�FRP�SJWH�KDQGVRQBQRGHMVBVRXUFHBFRGH�]LSEDOO�PDVWHUu

{KWWS���QRGHMV�RUJtKWWSV���JLWKXE�FRP�SJWH�KDQGVRQBQRGHMVBVRXUFHBFRGHuKWWSV���JLWKXE�FRP�SJWH�KDQGVRQBQRGHMVBVRXUFHBFRGH�]LSEDOO�PDVWHU

Page 14: Handson Nodejs

,QWURGXFWLRQ �

:KHUH ZLOO WKLV ERRN OHDG \RX"

%\ WKH HQG RI LW� \RX VKRXOG XQGHUVWDQG WKH 1RGH $3, DQG EH DEOH WR SXUVXH WKH H[SORUDWLRQ RI RWKHUWKLQJV EXLOW RQ WRS RI LW� EHLQJ DGDSWRUV� IUDPHZRUNV DQG PRGXOHV�

/HW٧V JHW VWDUWHG�

Page 15: Handson Nodejs

:K\":K\ WKH HYHQW ORRS"

7KH (YHQW /RRS LV D VRIWZDUH SDWWHUQ WKDW IDFLOLWDWHV QRQ�EORFNLQJ ,�2 �QHWZRUN� ILOH RU LQWHU�SURFHVVFRPPXQLFDWLRQ�� 7UDGLWLRQDO EORFNLQJ SURJUDPPLQJ GRHV ,�2 LQ WKH VDPH IDVKLRQ DV UHJXODU IXQFWLRQFDOOV� SURFHVVLQJ PD\ QRW FRQWLQXH XQWLO WKH RSHUDWLRQ LV FRPSOHWH� +HUH LV VRPH SVHXGR�FRGH WKDWGHPRQVWUDWHV EORFNLQJ ,�2�

� WBS QPTU � EC�RVFSZ�4&-&$5 � '30. QPTUT XIFSF JE � ���

� �� QSPDFTTJOH GSPN UIJT MJOF POXBSE DBOOPU FYFDVUF VOUJM UIF MJOF BCPWF DPNQMFUFT

� EP4PNFUIJOH8JUI1PTUQPTU�

� EP4PNFUIJOH&MTF�

:KDW LV KDSSHQLQJ KHUH" :KLOH WKH GDWDEDVH TXHU\ LV EHLQJ H[HFXWHG� WKH ZKROH SURFHVV�WKUHDGLGOHV� ZDLWLQJ IRU WKH UHVSRQVH� 7KLV LV FDOOHG EORFNLQJ� 7KH UHVSRQVH WR WKLV TXHU\ PD\ WDNH PDQ\WKRXVDQGV RI &38 F\FOHV� UHQGHULQJ WKH HQWLUH SURFHVV XQXVDEOH GXULQJ WKLV WLPH� 7KH SURFHVV FRXOGKDYH EHHQ VHUYLFLQJ RWKHU FOLHQW UHTXHVWV LQVWHDG RI MXVW ZDLWLQJ IRU WKH GDWDEDVH RSHUDWLRQ WRFRPSOHWH�

3URJUDPPLQJ LQ WKLV ZD\ GRHV QRW DOORZ \RX WR SDUDOOHOL]H ,�2 �VXFK DV SHUIRUPLQJ DQRWKHU GDWDEDVHTXHU\ RU FRPPXQLFDWLQJ ZLWK D UHPRWH ZHE VHUYLFH�� 7KH FDOO VWDFN EHFRPHV IUR]HQ� ZDLWLQJ IRU WKHGDWDEDVH VHUYHU WR UHSO\�

7KLV OHDYHV \RX ZLWK WZR SRVVLEOH VROXWLRQV WR NHHS WKH SURFHVV EXV\ ZKLOH LW٧V ZDLWLQJ� FUHDWH PRUHFDOO VWDFNV RU XVH HYHQW FDOOEDFNV�

6ROXWLRQ �� &UHDWH PRUH FDOO VWDFNV

,Q RUGHU IRU \RXU SURFHVV WR KDQGOH PRUH FRQFXUUHQW ,�2� \RX KDYH WR KDYH PRUH FRQFXUUHQW FDOOVWDFNV� )RU WKLV� \RX FDQ XVH WKUHDGV RU VRPH NLQG RI FRRSHUDWLYH PXOWL�WKUHDGLQJ VFKHPH OLNH FR�URXWLQHV� ILEHUV� FRQWLQXDWLRQV� HWF�

7KH PXOWL�WKUHDGHG FRQFXUUHQF\ PRGHO FDQ EH YHU\ GLIILFXOW WR FRQILJXUH� XQGHUVWDQG DQG GHEXJ�PDLQO\ EHFDXVH RI WKH FRPSOH[LW\ RI V\QFKURQL]DWLRQ ZKHQ DFFHVVLQJ DQG PRGLI\LQJ VKDUHG VWDWH�\RX QHYHU NQRZ ZKHQ WKH WKUHDG \RX DUH UXQQLQJ LV JRLQJ WR EH WDNHQ RXW RI H[HFXWLRQ� ZKLFK FDQOHDG WR EXJV WKDW DUH VWUDQJH DQG GLIILFXOW WR UHSURGXFH�

2Q WKH RWKHU KDQG� FRRSHUDWLYH PXOWL�WKUHDGLQJ LV D ٪WULFN٫ ZKHUH \RX KDYH PRUH WKDQ RQH VWDFN�DQG HDFK ٪WKUHDG٫ RI H[HFXWLRQ H[SOLFLWO\ GH�VFKHGXOHV LWVHOI WR JLYH WLPH WR DQRWKHU SDUDOOHO ٪WKUHDG٫RI H[HFXWLRQ� 7KLV FDQ UHOD[ WKH V\QFKURQL]DWLRQ UHTXLUHPHQWV EXW FDQ EHFRPH FRPSOH[ DQG HUURU�SURQH� VLQFH WKH WKUHDG VFKHGXOLQJ LV OHIW LQ WKH KDQGV RI WKH SURJUDPPHU�

Page 16: Handson Nodejs

:K\" �

6ROXWLRQ �� 8VH HYHQW�GULYHQ �2

(YHQW�GULYHQ ,�2 LV D VFKHPH ZKHUH \RX UHJLVWHU FDOOEDFNV WR EH LQYRNHG ZKHQ DQ LQWHUHVWLQJ ,�2HYHQW KDSSHQV�

$Q HYHQW FDOOEDFN LV D IXQFWLRQ WKDW JHWV LQYRNHG ZKHQ VRPHWKLQJ VLJQLILFDQW KDSSHQV �H�J� WKH UHVXOWRI D GDWDEDVH TXHU\ LV DYDLODEOH��

7R XVH HYHQW FDOOEDFNV LQ WKH SUHYLRXV H[DPSOH� \RX FRXOG FKDQJH LW WR�

� DBMMCBDL � GVODUJPOQPTU \

� EP4PNFUIJOH8JUI1PTUQPTU� �� UIJT XJMM POMZ FYFDVUF XIFO UIF EC�RVFSZ GVODUJPO=

� SFUVSOT�

� ^�

� EC�RVFSZ�4&-&$5 � '30. QPTUT XIFSF JE � �� DBMMCBDL�

� EP4PNFUIJOH&MTF� �� UIJT XJMM FYFDVUF JOEFQFOEFOU PG UIF SFUVSOFE TUBUVT PG UIF=

� EC�RVFSZ DBMM�

+HUH \RX DUH GHILQLQJ D IXQFWLRQ WR EH LQYRNHGZKHQ WKH GDWDEDVH RSHUDWLRQ LV FRPSOHWH� WKHQ SDVVLQJWKLV IXQFWLRQ DV D FDOOEDFN DUJXPHQW WR WKH GE TXHU\ RSHUDWLRQ� 7KH GE RSHUDWLRQ EHFRPHV UHVSRQVLEOHIRU H[HFXWLQJ WKH FDOOEDFN ZKHQ WKH UHVXOW LV DYDLODEOH�

<RX FDQ XVH DQ LQOLQH DQRQ\PRXV IXQFWLRQ WR H[SUHVV WKLV LQ D PRUH FRPSDFW IDVKLRQ�

� EC�RVFSZ�4&-&$5 � '30. QPTUT XIFSF JE � ��

� GVODUJPOQPTU \

� EP4PNFUIJOH8JUI1PTUQPTU� �� UIJT XJMM POMZ FYFDVUF XIFO UIF EC�RVFSZ GVODUJ=

� PO SFUVSOT�

� ^

� �

� EP4PNFUIJOH&MTF� �� UIJT XJMM FYFDVUF JOEFQFOEFOU PG UIF SFUVSOFE TUBUVT PG UIF=

� EC�RVFSZ DBMM�

:KLOH GE�TXHU\�� LV H[HFXWLQJ� WKH SURFHVV LV IUHH WR FRQWLQXH UXQQLQJ GR6RPHWKLQJ(OVH��� DQG HYHQVHUYLFH QHZ FOLHQW UHTXHVWV�

)RU TXLWH VRPH WLPH� WKH & V\VWHPV�SURJUDPPLQJ ٪KDFNHU٫ FRPPXQLW\ KDV NQRZQ WKDW HYHQW�GULYHQSURJUDPPLQJ LV WKH EHVW ZD\ WR VFDOH D VHUYHU WR KDQGOH PDQ\ FRQFXUUHQW FRQQHFWLRQV� ,W KDV EHHQNQRZQ WR EHPRUH HIILFLHQW UHJDUGLQJPHPRU\� OHVV FRQWH[W WR VWRUH� DQG WLPH� OHVV FRQWH[W�VZLWFKLQJ�

7KLV NQRZOHGJH KDV EHHQ LQILOWUDWLQJ RWKHU SODWIRUPV DQG FRPPXQLWLHV� VRPH RI WKH PRVW ZHOO�NQRZQ HYHQW ORRS LPSOHPHQWDWLRQV DUH 5XE\٧V (YHQW 0DFKLQH� 3HUO٧V $Q\(YHQW DQG 3\WKRQ٧V7ZLVWHG� DQG VRPH RWKHUV�

Page 17: Handson Nodejs

:K\" �

7LS� )RUPRUH LQIR DERXW HYHQW�GULYHQ VHUYHU LPSOHPHQWDWLRQV� VHH KWWS���HQ�ZLNLSHGLD�RUJ�ZLNL�5HDFWRUB�SDWWHUQڏ�

,PSOHPHQWLQJ DQ DSSOLFDWLRQ XVLQJ RQH RI WKHVH HYHQW�GULYHQ IUDPHZRUNV UHTXLUHV IUDPHZRUN�VSHFLILF NQRZOHGJH DQG IUDPHZRUN�VSHFLILF OLEUDULHV� )RU H[DPSOH� ZKHQ XVLQJ (YHQW 0DFKLQH� \RXPXVW DYRLG XVLQJ DOO WKH V\QFKURQRXV OLEUDULHV DYDLODEOH LQ 5XE\�ODQG �L�H� PRVW OLEUDULHV�� 7R JDLQWKH EHQHILW RI QRW EORFNLQJ� \RX DUH OLPLWHG WR XVLQJ OLEUDULHV WKDW DUH VSHFLILF IRU (YHQW 0DFKLQH� ,I\RX XVH EORFNLQJ OLEUDULHV� \RXU SURJUDP ZLOO QRW EH DEOH WR VFDOH RSWLPDOO\ EHFDXVH WKH HYHQW ORRS LVFRQVWDQWO\ EHLQJ EORFNHG� ZKLFK PD\ GHOD\ WKH SURFHVVLQJ RI ,�2 HYHQWV DQG PDNHV \RXU DSSOLFDWLRQVORZ� GHIHDWLQJ WKH RULJLQDO SXUSRVH RI XVLQJ HYHQW�GULYHQ ,�2�

1RGH KDV EHHQ GHYLVHG DV D QRQ�EORFNLQJ ,�2 VHUYHU SODWIRUP IURP GD\ RQH� ZKLFK PHDQV WKDW \RXVKRXOG H[SHFW HYHU\WKLQJ EXLOW RQ WRS RI LW WR EH QRQ�EORFNLQJ �ZLWK VRPH VSHFLILF DQG YHU\ H[SOLFLWH[FHSWLRQV�� 6LQFH -DYD6FULSW LWVHOI LV YHU\ PLQLPDO DQG GRHV QRW LPSRVH DQ\ ZD\ RI GRLQJ ,�2 �LWGRHV QRW KDYH D VWDQGDUG ,�2 OLEUDU\ OLNH &� 5XE\ RU 3\WKRQ�� 1RGH KDV D FOHDQ VODWH WR EXLOG XSRQ�

:K\ -DYD6FULSW"

5\DQ 'DKO EHJDQ WKLV SHW SURMHFW RI KLV E\ EXLOGLQJ D SODWIRUP WKDW ZDV SURJUDPPDEOH LQ &� EXW KHVRRQ UHDOL]HG WKDW PDLQWDLQLQJ WKH FRQWH[W EHWZHHQ FDOOEDFNV ZDV WRR FRPSOLFDWHG DQG FRXOG OHDGWR SRRUO\ VWUXFWXUHG FRGH� +H WKHQ WXUQHG WR /XD�

/XD DOUHDG\ KDV VHYHUDO EORFNLQJ ,�2 OLEUDULHV DQG WKH PL[ RI EORFNLQJ DQG QRQ�EORFNLQJ FRXOGFRQIXVH DYHUDJH GHYHORSHUV DQG SUHYHQW PDQ\ RI WKHP IURP EXLOGLQJ VFDODEOH DSSOLFDWLRQV� VR /XDZDVQ٧W LGHDO HLWKHU� 'DKO WKHQ WKRXJKW WR -DYD6FULSW�

-DYD6FULSW KDV FORVXUHV DQG ILUVW�FODVV IXQFWLRQV� PDNLQJ LW LQGHHG D SRZHUIXO PDWFK ZLWK HYHQWHG,�2 SURJUDPPLQJ�

&ORVXUHV DUH IXQFWLRQV WKDW LQKHULW WKH YDULDEOHV IURP WKHLU HQFORVLQJ HQYLURQPHQW� :KHQ D IXQFWLRQFDOOEDFN H[HFXWHV LW ZLOO PDJLFDOO\ UHPHPEHU WKH FRQWH[W LQ ZKLFK LW ZDV GHFODUHG� DORQJ ZLWK DOOWKH YDULDEOHV DYDLODEOH LQ WKDW FRQWH[W DQG DQ\ SDUHQW FRQWH[WV� 7KLV SRZHUIXO IHDWXUH LV DW WKH KHDUWRI 1RGH٧V VXFFHVV DPRQJ SURJUDPPLQJ FRPPXQLWLHV� /HW٧V VHH D OLWWOH ELW RI WKLV JRRGQHVV LQ DFWLRQ�

,Q WKH ZHE EURZVHU� LI \RX ZDQW WR OLVWHQ IRU DQ HYHQW� D EXWWRQ FOLFN IRU LQVWDQFH� \RX PD\ GRVRPHWKLQJ OLNH�

� WBS DMJDL$PVOU � ��

� EPDVNFOU�HFU&MFNFOU#Z*E�NZCVUUPO��PODMJDL � GVODUJPO \

� DMJDL$PVOU ���

� BMFSU�$MJDLFE � � DMJDL$PVOU � � UJNFT���

� ^�

RU� XVLQJ M4XHU\�

�KWWSڏ��HQ�ZLNLSHGLD�RUJ�ZLNL�5HDFWRUBSDWWHUQ

Page 18: Handson Nodejs

:K\" �

� WBS DMJDL$PVOU � ��

� ��CVUUPO�NZCVUUPO��DMJDLGVODUJPO \

� DMJDL$PVOU ���

� BMFSU�$MJDLFE � � DMJDL$PVOU � � UJNFT���

� ^�

,Q ERWK H[DPSOHV ZH DVVLJQ RU SDVV D IXQFWLRQ DV DQ DUJXPHQW� 7KLV IXQFWLRQ ZLOO WKHQ EH H[HFXWHGODWHU RQFH WKH UHOHYDQW HYHQW �EXWWRQ FOLFNLQJ LQ WKLV FDVH� KDSSHQV� 7KH FOLFN KDQGOLQJ IXQFWLRQ KDVDFFHVV WR HYHU\ YDULDEOH LQ VFRSH DW WKH SRLQW ZKHUH WKH IXQFWLRQ LV GHFODUHG� L�H� SUDFWLFDOO\ VSHDNLQJ�WKH FOLFN KDQGOHU KDV DFFHVV WR WKH FOLFN&RXQW YDULDEOH� GHFODUHG LQ WKH SDUHQW FORVXUH�

+HUH ZH DUH XVLQJ D JOREDO YDULDEOH� ٪FOLFN&RXQW٫� ZKHUH ZH VWRUH WKH QXPEHU RI WLPHV WKH XVHU KDVFOLFNHG D EXWWRQ� :H FDQ DOVR DYRLG KDYLQJ D JOREDO YDULDEOH DFFHVVLEOH WR WKH UHVW RI WKH V\VWHP�E\ ZUDSSLQJ LW LQVLGH DQRWKHU FORVXUH� PDNLQJ WKH FOLFN&RXQW YDULDEOH RQO\ DFFHVVLEOH ZLWKLQ WKHFORVXUH ZH FUHDWHG�

� GVODUJPO \

� WBS DMJDL$PVOU � ��

� ��CVUUPO�NZCVUUPO��DMJDLGVODUJPO \

� DMJDL$PVOU ���

� BMFSU�$MJDLFE � � DMJDL$PVOU � � UJNFT���

� ^�

� ^�

,Q OLQH � ZH DUH LQYRNLQJ D IXQFWLRQ LPPHGLDWHO\ DIWHU GHILQLQJ LW� ,I WKLV LV VWUDQJH WR \RX� GRQ٧WZRUU\� :H ZLOO FRYHU WKLV SDWWHUQ ODWHU�

+HUH \RX GRQ٧W KDYH WR ZRUU\ DERXW V\QFKURQL]DWLRQ� \RXU FDOOEDFN IXQFWLRQ ZLOO QRW EH LQWHUUXSWHGXQWLO LW UHWXUQV � \RX KDYH WKDW JXDUDQWHH�

+RZ Ζ /HDUQHG WR 6WRS )HDULQJ DQG /RYH -DYD6FULSW

-DYD6FULSW KDV JRRG DQG EDG SDUWV� ,W ZDV FUHDWHG LQ ���� E\ 1HWVFDSH٧V %UHQGDQ (LFK� LQ D UXVK WRVKLS WKH ODWHVW YHUVLRQ RI WKH 1HWVFDSH ZHE EURZVHU� 'XH WR WKLV UXVK VRPH JRRG� HYHQ ZRQGHUIXO�SDUWV JRW LQWR -DYD6FULSW� EXW DOVR VRPH EDG SDUWV�

7KLV ERRN ZLOO QRW FRYHU WKH GLVWLQFWLRQ EHWZHHQ -DYD6FULSW JRRG DQG EDG SDUWV� �)RU DOO ZH NQRZ� ZHZLOO RQO\ SURYLGH H[DPSOHV XVLQJ WKH JRRG SDUWV�� )RU PRUH RQ WKLV WRSLF \RX VKRXOG UHDG 'RXJODV&URFNIRUG ERRN QDPHG ٪-DYD6FULSW� 7KH *RRG 3DUWV٫� HGLWHG E\ 2٧5HLOO\�

Page 19: Handson Nodejs

:K\" �

,Q VSLWH RI LWV GUDZEDFNV� -DYD6FULSW TXLFNO\ � DQG VRPHZKDW XQSUHGLFWDEO\ � EHFDPH WKH GH�IDFWRODQJXDJH IRU ZHE EURZVHUV� %DFN WKHQ� -DYD6FULSW ZDV XVHG SULPDULO\ WR LQVSHFW DQG PDQLSXODWH+70/ GRFXPHQWV� DOORZLQJ WKH FUHDWLRQ WKH ILUVW G\QDPLF� FOLHQW�VLGH ZHE DSSOLFDWLRQV�

,Q ODWH ����� WKH :RUOG :LGH :HE &RQVRUWLXP �:�&�� VWDQGDUGL]HG WKH 'RFXPHQW 2EMHFW 0RGHO�'20�� DQ $3, GHYLVHG WR LQVSHFW DQG PDQLSXODWH +70/ GRFXPHQWV RQ WKH FOLHQW VLGH� ,Q UHVSRQVHWR -DYD6FULSW٧V TXLUNV DQG WKH LQLWLDO KDWUHG WRZDUGV WKH '20 $3,� -DYD6FULSW TXLFNO\ JDLQHG DEDG UHSXWDWLRQ� DOVR GXH WR VRPH LQFRPSDWLELOLWLHV EHWZHHQ EURZVHU YHQGRUV �DQG VRPHWLPHV HYHQEHWZHHQ SURGXFWV IURP WKH VDPH YHQGRU���

'HVSLWH PLOG WR IXOO�EORZQ KDWH LQ VRPH GHYHORSHU FRPPXQLWLHV� -DYD6FULSW EHFDPH ZLGHO\ DGRSWHG�)RU EHWWHU RU IRU ZRUVH� WRGD\ -DYD6FULSW LV WKH PRVW ZLGHO\ GHSOR\HG SURJUDPPLQJ ODQJXDJH RQSODQHW (DUWK ١ DQG JURZLQJ�

,I \RX OHDUQ WKH JRRG IHDWXUHV RI WKH ODQJXDJH � VXFK DV SURWRW\SLFDO LQKHULWDQFH� IXQFWLRQ FORVXUHV�HWF� � DQG OHDUQ WR DYRLG RU FLUFXPYHQW WKH EDG SDUWV� -DYD6FULSW FDQ EH D YHU\ SOHDVDQW ODQJXDJH WRZRUN LQ�

)XQFWLRQ 'HFODUDWLRQ 6W\OHV

$ IXQFWLRQ FDQ EH GHFODUHG LQ PDQ\ ZD\V LQ -DYD6FULSW� 7KH VLPSOHVW LV GHFODULQJ LW DQRQ\PRXVO\�

� GVODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^

+HUH ZH GHFODUH D IXQFWLRQ� EXW LW٧V QRW RI PXFK XVH� EHFDXVH ZH GR QRW LQYRNH LW� :KDW٧V PRUH� ZHKDYH QR ZD\ WR LQYRNH LW DV LW KDV QR QDPH�

:H FDQ LQYRNH DQ DQRQ\PRXV IXQFWLRQ LQ�SODFH�

� GVODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^�

+HUH ZH DUH H[HFXWLQJ WKH IXQFWLRQ LPPHGLDWHO\ DIWHU GHFODULQJ LW� 1RWLFH ZH ZUDS WKH HQWLUHIXQFWLRQ GHFODUDWLRQ LQ SDUHQWKHVLV�

:H FDQ DOVR QDPH IXQFWLRQV OLNH WKLV�

� GVODUJPO NZ'VODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^

+HUH ZH DUH GHFODULQJ D QDPHG IXQFWLRQ ZLWK WKH QDPH� ٪P\)XQFWLRQ٫� P\)XQFWLRQ ZLOO EH DYDLODEOHLQVLGH WKH VFRSH LQ ZKLFK LW٧V GHFODUHG

Page 20: Handson Nodejs

:K\" �

� NZ'VODUJPO�

DQG DOVR ZLWKLQ LQQHU VFRSHV�

� GVODUJPO NZ'VODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^

� GVODUJPO \

� NZ'VODUJPO�

� ^�

$ UHVXOW RI -DYD6FULSW WUHDWLQJ IXQFWLRQV DV ILUVW�FODVV REMHFWV PHDQV ZH FDQ DVVLJQ D IXQFWLRQ WR DYDULDEOH�

� WBS NZ'VOD � GVODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^

7KLV IXQFWLRQ LV QRZ DYDLODEOH DV WKH YDOXH RI WKH P\)XQF YDULDEOH�

:H FDQ DVVLJQ WKDW IXQFWLRQ WR DQRWKHU YDULDEOH�

� WBS NZ'VOD� � NZ'VOD�

$QG LQYRNH WKHP MXVW OLNH DQ\ RWKHU IXQFWLRQ�

� NZ'VOD�

� NZ'VOD��

:H FDQ PL[ ERWK WHFKQLTXHV� KDYLQJ D QDPHG IXQFWLRQ VWRUHG LQ D YDULDEOH�

� WBS NZ'VOD� � GVODUJPO NZ'VOD \

� DPOTPMF�MPH�IFMMP��

� ^

� NZ'VOD��

�1RWH WKRXJK� ZH FDQQRW DFFHVV P\)XQF IURP RXWVLGH WKH VFRSH RI P\)XQF LWVHOI��

:H FDQ WKHQ XVH D YDULDEOH RU D IXQFWLRQ QDPH WR SDVV YDULDEOHV LQWR IXQFWLRQV OLNH WKLV�

Page 21: Handson Nodejs

:K\" ��

� WBS NZ'VOD � GVODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^

� DPOTPMF�MPHNZ'VOD�

RU VLPSO\ GHFODUH LW LQOLQH LI ZH GRQ٧W QHHG LW IRU DQ\WKLQJ HOVH�

� DPOTPMF�MPHGVODUJPO \

� DPOTPMF�MPH�IFMMP��

� ^�

)XQFWLRQV DUH ILUVW�FODVV REMHFWV

,Q IDFW� WKHUH DUH QR VHFRQG�FODVV REMHFWV LQ -DYD6FULSW� -DYD6FULSW LV WKH XOWLPDWH REMHFW�RULHQWHGODQJXDJH� ZKHUH �DOPRVW� HYHU\WKLQJ LV LQGHHG� DQ REMHFW� $V WKDW� D IXQFWLRQ LV DQ REMHFW ZKHUH \RXFDQ VHW SURSHUWLHV� SDVV LW DURXQG LQVLGH DUJXPHQWV DQG UHWXUQ WKHP�

([DPSOH�

� WBS TDIFEVMFS � GVODUJPOUJNFPVU DBMMCBDLGVODUJPO \

� SFUVSO GVODUJPO \

� TFU5JNFPVUDBMMCBDLGVODUJPO UJNFPVU

� ^

� ^�

� GVODUJPO \

� WBS UJNFPVU � ����� �� � TFDPOE

� WBS DPVOU � ��

�� WBS TDIFEVMF � TDIFEVMFSUJNFPVU GVODUJPO EP4UVGG \

�� DPOTPMF�MPH�� DPVOU�

�� TDIFEVMF�

�� ^�

�� TDIFEVMF

�� ^�

��

�� �� áUJNFPVUá BOE áDPVOUá WBSJBCMFT

�� �� EP OPU FYJTU JO UIJT TDPQF�

,Q WKLV OLWWOH H[DPSOH ZH FUHDWH D IXQFWLRQ DQG VWRUH LW LQ D YDULDEOH FDOOHG ٪VFKHGXOHU٫ �VWDUWLQJ RQOLQH ��� 7KLV IXQFWLRQ UHWXUQV D IXQFWLRQ WKDW VHWV XS D WLPHU WKDW ZLOO H[HFXWH D JLYHQ IXQFWLRQ ZLWKLQD FHUWDLQ QXPEHU RI PLOLVHFRQGV �OLQH ��� 7KLV WLPHRXW ZLOO VFKHGXOH D FDOOEDFN IXQFWLRQ WR EH FDOOHGDIWHU D WLPH GHOD\ RI � VHFRQG� DV VSHFLILHG E\ WKH WLPHRXW YDULDEOH�

Page 22: Handson Nodejs

:K\" ��

,Q OLQH � ZH GHFODUH D IXQFWLRQ WKDW ZLOO LPPHGLDWHO\ EH H[HFXWHG LQ OLQH ��� 7KLV LV D QRUPDO ZD\WR FUHDWH QHZ VFRSHV LQ -DYD6FULSW� ,QVLGH WKLV VFRSH ZH FUHDWH � YDULDEOHV� ٪WLPHRXW٫ �OLQH �� DQG٪FRXQW٫ �OLQH ��� 1RWH WKDW WKHVH YDULDEOHV ZLOO QRW EH DFFHVVLEOH WR WKH RXWHU VFRSH�

7KHQ� RQ OLQH ��� ZH LQYRNH WKH VFKHGXOHU IXQFWLRQ� SDVVLQJ LQ WKH WLPHRXW YDOXH DV ILUVW DUJXPHQWDQG D IXQFWLRQ FDOOHG GR6WXII DV VHFRQG DUJXPHQW� 7KLV UHWXUQV D IXQFWLRQ WKDW ZH VWRUH LQ WKH ORFDOVFKHGXOH YDULDEOH� ZKLFK ZH ODWHU LQYRNH �OLQH ���� SURYRNLQJ WKH VHW7LPHRXW WR EH FDOOHG� :KHQ WKHWLPHRXW RFFXUV� WKLV IXQFWLRQ ZLOO LQFUHPHQW WKH YDULDEOH FRXQW DQG ORJ LW� DQG DOVR FDOO WKH VFKHGXOHDOO RYHU DJDLQ�

6R LQ WKLV VPDOO H[DPSOH ZH KDYH� IXQFWLRQV SDVVHG DV DUJXPHQW� IXQFWLRQV WR FUHDWH VFRSH� IXQFWLRQVWR VHUYH DV DV\QFKURQRXV FDOOEDFNV DQG UHWXUQLQJ IXQFWLRQV� :H DOVR KHUH SUHVHQW WKH QRWLRQV RIHQFDSVXODWLRQ �E\ KLGLQJ ORFDO YDULDEOHV IRUP WKH RXWVLGH VFRSH� DQG UHFXUVLRQ �WKH IXQFWLRQ LV FDOOLQJLWVHOI DW WKH HQG��

,Q -DYD6FULSW \RX FDQ HYHQ VHW DQG DFFHVV DWWULEXWHV LQ D IXQFWLRQ� VRPHWKLQJ OLNH WKLV�

� WBS NZ'VODUJPO � GVODUJPO \

� �� EP TPNFUIJOH DSB[Z

� ^�

� NZ'VODUJPO�TPNF1SPQFSUZ � �BCD��

� DPOTPMF�MPHNZ'VODUJPO�TPNF1SPQFSUZ�

� �� ��� áBCDá

-DYD6FULSW LV LQGHHG D SRZHUIXO ODQJXDJH� DQG LI \RX GRQ٧W DOUHDG\� \RX VKRXOG OHDUQ LW DQG HPEUDFHLWV JRRG SDUWV�

-6+LQW

,W٧V QRW WR EH FRYHUHG KHUH� EXW -DYD6FULSW LQGHHG KDV VRPH EDG SDUWV� DQG WKH\ VKRXOG EH DYRLGHG DWDOO FRVWV�

2QH WRRO WKDW٧V SURYHQ LQYDOXDEOH WR PH LV -6+LQW� -6+LQW DQDO\]HV \RXU -DYD6FULSW ILOH DQG RXWSXWV DVHULHV RI HUURUV DQG ZDUQLQJV� LQFOXGLQJ VRPH NQRZQ PLVXVHV RI -DYD6FULSW� VXFK DV XVLQJ JOREDOO\�VFRSHG YDULDEOHV �OLNH ZKHQ \RX IRUJHW WKH ٪YDU٫ NH\ZRUG�� DQG IUHH]LQJ YDOXHV LQVLGH LWHUDWLRQ WKDWKDYH FDOOEDFNV WKDW XVH WKHP� DQG PDQ\ RWKHUV WKDW DUH XVHIXO�

-+/LQW FDQ EH LQVWDOOHG XVLQJ

� � OQN JOTUBMM �H KTIJOU

,I \RX GRQ٧W KDYH 1RGH LQVWDOOHG VHH VHFWLRQ DERXW �ڐ130

DQG FDQ EH UXQ IURP WKH FRPPDQG OLQH OLNH WKLV�

LQGH[�KWPO�QSPڐ

Page 23: Handson Nodejs

:K\" ��

� � KTIJOU NZGJMF�KT

<RX FDQ DOVR GHILQH ZKDW UXOHV WKLV WRRO VKRXOG REH\ E\ GHILQLQJ DQG FXVWRPL]LQJ D �MVKLQWUF LQVLGH\RXU KRPH GLUHFWRU\� )RU PRUH LQIRUPDWLRQ RQ -6+LQW SOUHDVH UHIHU WR WKH RIILFLDO GRFXPHQWDWLRQ DWKWWS���ZZZ�MVKLQW�FRP�GRFVڑ��

-DYD6FULSW YHUVLRQV

-DYD6FULSW LV D VWDQGDUGZLWK LWV RZQ QDPH � (&0$6FULSW � DQG LW KDV JRQH WKURXJK YDULRXV LWHUDWLRQV�&XUUHQWO\ 1RGH QDWLYHO\ VXSSRUWV HYHU\WKLQJ WKH 9� -DYD6FULSW HQJLQH VXSSRUWV (&0$ �UG HGLWLRQDQG SDUWV RI WKH QHZ (&0$ �WK HGLWLRQ�

7KHVH SDUWV RI (&0$� DUH QLFHO\ GRFXPHQWHG RQ WKH IROORZLQJ JLWKXEZLNL SDJH� KWWSV���JLWKXE�FRP�MR\HQW�QRGH�ZLNL�(&0$���0R]LOOD�)HDWXUHV�,PSOHPHQWHG�LQ�9ڒ�

5HIHUHQFHV

(YHQW 0DFKLQH� KWWS���UXE\HYHQWPDFKLQH�FRPړ�

7ZLVWHG� KWWS���WZLVWHGPDWUL[�FRP�WUDFڔ�

$Q\(YHQW� KWWS���VRIWZDUH�VFKPRUS�GH�SNJ�$Q\(YHQW�KWPO{ڍ

-DYD6FULSW� WKH *RRG 3DUWV � 'RXJODV &URFNIRUG � 2٧5HLOO\ � KWWS���ZZZ�DPD]RQ�FRP�H[HF�RELGRV�$6,1������������ZUUUOGZLGHZHE{{

-6+LQW KWWS���ZZZ�MVKLQW�FRP�{t

�KWWSڑ��ZZZ�MVKLQW�FRP�GRFV��KWWSVڒ��JLWKXE�FRP�MR\HQW�QRGH�ZLNL�(&0$���0R]LOOD�)HDWXUHV�,PSOHPHQWHG�LQ�9��KWWSړ��UXE\HYHQWPDFKLQH�FRP��KWWSڔ��WZLVWHGPDWUL[�FRP�WUDF��KWWSڍ}��VRIWZDUH�VFKPRUS�GH�SNJ�$Q\(YHQW�KWPO{{KWWS���ZZZ�DPD]RQ�FRP�H[HF�RELGRV�$6,1������������ZUUUOGZLGHZHE{tKWWS���ZZZ�MVKLQW�FRP�

Page 24: Handson Nodejs

6WDUWLQJ XSΖQVWDOO 1RGH

,I \RX GRQ٧W KDYH WKH ODWHVW YHUVLRQ RI 1RGH�MV LQVWDOOHG LQ \RXU ORFDO PDFKLQH \RX VKRXOG GR WKDWQRZ� +HDG RXW WR KWWS���QRGHMV�RUJ{u DQG FOLFN RQ WKH ٪,QVWDOO٫ EXWWRQ�

'HSHQGLQJ RQ \RXU SODWIRUP� \RX ZLOO JHW D SDFNDJH LQVWDOOHU GRZQORDGHG WKDW \RX VKRXOG H[HFXWH WRLQVWDOO 1RGH� 7KLV ZRUNV LI \RX KDYH D 0DF26 RU D:LQGRZV PDFKLQH� ,I \RX٧UH RQ D /LQX[ ER[� \RXUGLVWULEXWLRQ SUREDEO\ VXSSRUWV WKH ODWHVW VWDEOH YHUVLRQ RI 1RGH�MV� EXW \RX FDQ DOZD\V GRZQORDG DQGEXLOG IURP WKH VRXUFH FRGH�

$IWHU \RX DUH GRQH� \RX VKRXOG EH DEOH WR UXQ WKH QRGH H[HFXWDEOH RQ WKH FRPPDQG OLQH�

� � OPEF �W

� W�������

7KH QRGH H[HFXWDEOH FDQ EH H[HFXWHG LQ WZR PDLQ IDVKLRQV� &/, �FRPPDQG�OLQH LQWHUIDFH� RU ILOH�

7R ODXQFK WKH &/,� MXVW W\SH� LQ WKH FRPPDQG OLQH�

� � OPEF

DQG \RX ZLOO JHW D -DYD6FULSW FRPPDQG OLQH SURPSW� ZKLFK \RX FDQ XVH WR HYDOXDWH -DYD6FULSW� ,W٧VJUHDW IRU NLFNLQJ WKH WLUHV DQG WU\LQJ RXW VRPH VWXII TXLFNO\�

<RX FDQ DOVR ODXQFK 1RGH RQ D ILOH� ZKLFK ZLOO PDNH 1RGH SDUVH DQG HYDOXDWH WKH -DYD6FULSW RQ WKDWILOH� DQG ZKHQ LW HQGV GRLQJ WKDW� LW HQWHUV WKH HYHQW ORRS� 2QFH LQVLGH WKH HYHQW ORRS� QRGH ZLOO H[LWLI LW KDV QRWKLQJ WR GR� RU ZLOO ZDLW DQG OLVWHQ IRU HYHQWV�

/HW٧V WKHQ FUHDWH RXU ILUVW +HOOR :RUOG +773 VHUYHU LQ 1RGH�MV LQVLGH D ILOH QDPHG IFMMP@XPSME�KT�

KHOORBZRUOG�MV�

{uKWWS���QRGHMV�RUJ

Page 25: Handson Nodejs

6WDUWLQJ XS ��

� WBS IUUQ � SFRVJSF�IUUQ��

� WBS TFSWFS � IUUQ�DSFBUF4FSWFS�

� TFSWFS�PO�SFRVFTU� GVODUJPOSFR SFT \

� SFT�FOE�)FMMP 8PSME�

� ^�

� TFSWFS�MJTUFO�����

<RX FDQ ODXQFK 1RGH RQ D ILOH OLNH WKLV�

� � OPEF IFMMP@XPSME�KT

1RZ� RSHQ D ZHE EURZVHU DQG SRLQW LW WR KWWS���ORFDOKRVW��ڏ}����

+HOOR :RUOG RQ WKH EURZVHU

�KWWSڏ}��ORFDOKRVW�����

Page 26: Handson Nodejs

8QGHUVWDQGLQJ8QGHUVWDQGLQJ WKH 1RGH HYHQW ORRS

1RGH PDNHV HYHQWHG ,�2 SURJUDPPLQJ VLPSOH DQG DFFHVVLEOH� SXWWLQJ VSHHG DQG VFDODELOLW\ RQ WKHILQJHUWLSV RI WKH FRPPRQ SURJUDPPHU�

%XW WKH HYHQW ORRS FRPHV ZLWK D SULFH� (YHQ WKRXJK \RX DUH QRW DZDUH RI LW �DQG 1RGH PDNHV DJRRG MRE DW WKLV�� \RX VKRXOG XQGHUVWDQG KRZ LW ZRUNV� (YHU\ JRRG SURJUDPPHU VKRXOG NQRZ WKHLQWULFDFLHV RI WKH SODWIRUPV KH � VKH LV EXLOGLQJ IRU� LWV GR٧V DQG GRQ٧WV� DQG LQ 1RGH LW VKRXOG EH QRGLIIHUHQW�

$Q HYHQW�TXHXH SURFHVVLQJ ORRS

<RX VKRXOG WKLQN RI WKH HYHQW ORRS DV D ORRS WKDW SURFHVVHV DQ HYHQW TXHXH� ,QWHUHVWLQJ HYHQWV KDSSHQ�DQG ZKHQ WKH\ GR� WKH\ JR LQ D TXHXH� ZDLWLQJ IRU WKHLU WXUQ WR EH SURFHVVHG� 7KHQ� WKHUH LV DQ HYHQWORRS SRSSLQJ RXW WKHVH HYHQWV� RQH E\ RQH� DQG LQYRNLQJ WKH DVVRFLDWHG FDOOEDFN IXQFWLRQV� RQH DW DWLPH� 7KH HYHQW ORRS SRSV RQH HYHQW RXW RI WKH TXHXH DQG LQYRNHV WKH DVVRFLDWHG FDOOEDFN� :KHQ WKHFDOOEDFN UHWXUQV� WKH HYHQW ORRS SRSV WKH QH[W HYHQW DQG LQYRNHV WKH DVVRFLDWHG FDOOEDFN IXQFWLRQ�:KHQ WKH HYHQW TXHXH LV HPSW\� WKH HYHQW ORRS ZDLWV IRU QHZ HYHQWV LI WKHUH DUH VRPH SHQGLQJ FDOOVRU VHUYHUV OLVWHQLQJ� RU MXVW TXLWV RI WKHUH DUH QRQH�

6R� OHW٧V MXPS LQWR RXU ILUVW 1RGH H[DPSOH� :ULWH D ILOH QDPHG KHOOR�MV ZLWK WKH IROORZLQJ FRQWHQW�

6RXUFH FRGH LQ FKDSWHUV�XQGHUVWDQGLQJ��BKHOOR�MV

� TFU5JNFPVUGVODUJPO \

� DPOTPMF�MPH�8PSME�

� ^ �����

� DPOTPMF�MPH�)FMMP��

5XQ LW XVLQJ WKH QRGH FRPPDQG OLQH WRRO�

� � OPEF IFMMP�KT

<RX VKRXOG VHH WKH ZRUG ٪+HOOR٫ ZULWWHQ RXW� DQG WKHQ� � VHFRQGV ODWHU� ٪:RUOG�٫� 6KRXOGQ٧W ٪:RUOG�٫KDYH EHHQ ZULWWHQ ILUVW VLQFH LW DSSHDUV ILUVW RQ WKH FRGH" 1R� DQG WR DQVZHU WKDW SURSHUO\ ZH PXVWDQDO\]H ZKDW KDSSHQV ZKHQ H[HFXWLQJ WKLV VPDOO SURJUDP�

Page 27: Handson Nodejs

8QGHUVWDQGLQJ ��

2Q OLQH � ZH GHFODUH DQ DQRQ\PRXV IXQFWLRQ WKDW SULQWV RXW ٪:RUOG�٫� 7KLV IXQFWLRQ� ZKLFK LV QRW\HW H[HFXWHG� LV SDVVHG LQ DV WKH ILUVW DUJXPHQW WR D VHW7LPHRXW FDOO� ZKLFK VFKHGXOHV WKLV IXQFWLRQWR UXQ DIWHU ���� PLOOLVHFRQGV KDYH SDVVHG� 7KHQ� RQ OLQH �� ZH RXWSXW ٪+HOOR٫ LQWR WKH FRQVROH�

7ZR VHFRQGV ODWHU WKH DQRQ\PRXV IXQFWLRQ ZH SDVVHG LQ DV DQ DUJXPHQW WR WKH VHW7LPHRXW FDOO LVLQYRNHG� SULQWLQJ ٪:RUOG�٫�

6R� WKH ILUVW DUJXPHQW WR WKH VHW7LPHRXW FDOO LV D IXQFWLRQ ZH FDOO D ٪FDOOEDFN٫� ,W٧V D IXQFWLRQ ZKLFKZLOO EH FDOOHG ODWHU� ZKHQ WKH HYHQW ZH VHW RXW WR OLVWHQ WR �LQ WKLV FDVH� D WLPH�RXW RI � VHFRQGV�RFFXUV�

:H FDQ DOVR SDVV FDOOEDFN IXQFWLRQV WR EH FDOOHG RQ HYHQWV OLNH ZKHQ D QHZ 7&3 FRQQHFWLRQ LVHVWDEOLVKHG� VRPH ILOH GDWD LV UHDG RU VRPH RWKHU W\SH RI ,�2 HYHQW�

$IWHU RXU FDOOEDFN LV LQYRNHG� SULQWLQJ ٪:RUOG٫� 1RGH XQGHUVWDQGV WKDW WKHUH LV QRWKLQJ PRUH WR GRDQG H[LWV�

&DOOEDFNV WKDW ZLOO JHQHUDWH HYHQWV

/HW٧V FRPSOLFDWH WKLV D ELW IXUWKHU� /HW٧V NHHS 1RGH EXV\ DQG NHHS RQ VFKHGXOLQJ FDOOEDFNV OLNH WKLV�

6RXUFH FRGH LQ FKDSWHUV�XQGHUVWDQGLQJ��BUHSHDW�MV

� GVODUJPO TDIFEVMF \

� TFU5JNFPVUGVODUJPO \

� DPOTPMF�MPH�)FMMP 8PSME�

� TDIFEVMF�

� ^ �����

� ^�

+HUH ZH DUH ZUDSSLQJ WKH ZKROH WKLQJ LQVLGH D IXQFWLRQ QDPHG ٪VFKHGXOH٫� DQG ZH DUH LQYRNLQJ LWLPPHGLDWHO\ DIWHU GHFODULQJ LW RQ OLQH �� 7KLV IXQFWLRQ ZLOO VFKHGXOH D FDOOEDFN WR H[HFXWH LQ � VHFRQG�7KLV FDOOEDFN� ZKHQ LQYRNHG� ZLOO SULQW ٪+HOOR :RUOG�٫ DQG WKHQ UXQ VFKHGXOH DJDLQ�

2Q HYHU\ FDOOEDFN ZH DUH UHJLVWHULQJ D QHZ RQH WR EH LQYRNHG RQH VHFRQG ODWHU� QHYHU OHWWLQJ 1RGHILQLVK DQG H[LW� 7KLV OLWWOH VFULSW ZLOO MXVW NHHS SULQWLQJ ٪+HOOR :RUOG٫�

'RQȇW EORFN�

1RGH٧V SULPDU\ FRQFHUQ DQG WKH PDLQ XVH FDVH IRU DQ HYHQW ORRS LV WR FUHDWH KLJKO\ VFDODEOH VHUYHUV�6LQFH DQ HYHQW ORRS UXQV LQ D VLQJOH WKUHDG� LW RQO\ SURFHVVHV WKH QH[W HYHQW ZKHQ WKH FDOOEDFN UHWXUQV�,I \RX FRXOG VHH WKH FDOO VWDFN RI D EXV\ 1RGH DSSOLFDWLRQ \RX ZRXOG VHH LW JRLQJ XS DQG GRZQ UHDOO\IDVW� LQYRNLQJ FDOOEDFNV DQG SLFNLQJ XS WKH QH[W HYHQW LQ TXHXH� %XW IRU WKLV WR ZRUN ZHOO \RX KDYHWR FOHDU WKH HYHQW ORRS DV IDVW DV \RX FDQ�

Page 28: Handson Nodejs

8QGHUVWDQGLQJ ��

7KHUH DUH WZR PDLQ FDWHJRULHV RI WKLQJV WKDW FDQ EORFN WKH HYHQW ORRS� V\QFKURQRXV ,�2 DQG ELJORRSV�

1RGH $3, LV QRW DOO DV\QFKURQRXV� 6RPH SDUWV RI LW DUH V\QFKURQRXV OLNH� IRU LQVWDQFH� VRPHILOH RSHUDWLRQV� 'RQ٧W ZRUU\� WKH\ DUH YHU\ ZHOO PDUNHG� WKH\ DOZD\V WHUPLQDWH LQ ٪6\QF٫ � OLNHIV�UHDG)LOH6\QF � � DQG WKH\ VKRXOG QRW EH XVHG� RU XVHG RQO\ ZKHQ LQLWLDOL]LQJ �PRUH DERXW WKDWODWHU�� 2Q D ZRUNLQJ VHUYHU \RX VKRXOG QHYHU XVH D EORFNLQJ ,�2 IXQFWLRQ LQVLGH D FDOOEDFN� VLQFH\RX٧UH EORFNLQJ WKH HYHQW ORRS DQG SUHYHQWLQJ RWKHU FDOOEDFNV � SUREDEO\ EHORQJLQJ WR RWKHU FOLHQWFRQQHFWLRQV � IURP EHLQJ VHUYHG� <RX٧OO MXVW EH LQFUHDVLQJ WKH UHVSRQVH ODWHQF\� GHFUHDVLQJ WKHUHVSRQVLYHQHVV RI \RXU VHUYLFH RU DSSOLFDWLRQ�

2QH IXQFWLRQ WKDW LV V\QFKURQRXV DQG GRHV QRW HQG LQ ٪6\QF٫ LV WKH ٪UHTXLUH٫ IXQFWLRQ� ZKLFK VKRXOGRQO\ EH XVHG ZKHQ LQLWLDOL]LQJ DQ DSS RU D PRGXOH� 7LS� 'RQ٧W SXW D UHTXLUH VWDWHPHQW LQVLGH DFDOOEDFN� VLQFH LW LV V\QFKURQRXV DQG WKXV ZLOO VORZ GRZQ \RXU HYHQW ORRS� 'R DOO \RXU UHTXLUH٧LQJGXULQJ WKH LQLWLDOL]DWLRQ SKDVH RI 1RGH DQG QRW LQVLGH DQ\ FDOOEDFN �ODWHU DGGUHVVHG��

7KH VHFRQG FDWHJRU\ RI EORFNLQJ VFHQDULRV LV ZKHQ \RX DUH SHUIRUPLQJ ORRSV WKDW WDNH D ORW RI WLPH�OLNH LWHUDWLQJ RYHU WKRXVDQGV RI REMHFWV RU GRLQJ FRPSOH[ &38 LQWHQVLYH� WLPH FRQVXPLQJ RSHUDWLRQVLQ PHPRU\� 7KHUH DUH VHYHUDO WHFKQLTXHV WKDW FDQ EH XVHG WR ZRUN DURXQG WKDW� ZKLFK ,٧OO FRYHU ODWHU�

+HUH LV D FDVH ZKHUH ZH SUHVHQW VRPH VLPSOH FRGH WKDW EORFNV WKH HYHQW ORRS�

� WBS PQFO � GBMTF�

� TFU5JNFPVUGVODUJPO \

� PQFO � USVF�

� ^ ����

� XIJMFàPQFO \

� �� XBJU

� ^

��

�� DPOTPMF�MPH�PQFOFE�

+HUH ZH DUH VHWWLQJ D WLPHRXW� RQ OLQH �� WKDW LQYRNHV D IXQFWLRQ WKDW ZLOO VHW WKH RSHQ YDULDEOH WRWUXH� 7KLV IXQFWLRQ LV VHW WR EH WULJJHUHG LQ RQH VHFRQG� 2Q OLQH � ZH DUH ZDLWLQJ IRU WKH YDULDEOH WREHFRPH WUXH�

:H FRXOG EH OHG WR EHOLHYH WKDW� LQ RQH VHFRQG WKH WLPHRXW ZLOO KDSSHQ DQG VHW RSHQ WR WUXH� DQG WKDWWKH ZKLOH ORRS ZLOO VWRS DQG WKDW ZH ZLOO JHW ٪RSHQHG�٫ �OLQH ��� SULQWHG�

%XW WKLV QHYHU KDSSHQV� 1RGH ZLOO QHYHU H[HFXWH WKH WLPHRXW FDOOEDFN EHFDXVH WKH HYHQW ORRS LV VWXFNRQ WKLV ZKLOH ORRS VWDUWHG RQ OLQH �� QHYHU JLYLQJ LW D FKDQFH WR SURFHVV WKH WLPHRXW HYHQW�

Page 29: Handson Nodejs

0RGXOHV DQG 1300RGXOHV

&OLHQW�VLGH -DYD6FULSW KDV D EDG UHSXWDWLRQ DOVR EHFDXVH RI WKH FRPPRQ QDPHVSDFH VKDUHG E\ DOOVFULSWV� ZKLFK FDQ OHDG WR FRQIOLFWV DQG VHFXULW\ OHDNV�

1RGH LPSOHPHQWV WKH &RPPRQ-6 PRGXOHV VWDQGDUG� ZKHUH HDFK PRGXOH LV VHSDUDWHG IURP WKH RWKHUPRGXOHV� KDYLQJ D VHSDUDWH QDPHVSDFH WR SOD\ ZLWK� DQG H[SRUWLQJ RQO\ WKH GHVLUHG SURSHUWLHV�

7R LQFOXGH DQ H[LVWLQJ PRGXOH \RX FDQ XVH WKH UHTXLUH IXQFWLRQ OLNH WKLV�

� WBS NPEVMF � SFRVJSF�NPEVMF@OBNF��

7KLV ZLOO IHWFK D PRGXOH WKDW ZDV LQVWDOOHG E\ 130 �PRUH DERXW 130 ODWHU�� ,I \RX ZDQW WR DXWKRUPRGXOHV �DV \RX VKRXOG ZKHQ EXLOGLQJ DQ DSSOLFDWLRQ�� \RX FDQ DOVR XVH WKH UHODWLYH QRWDWLRQ OLNHWKLV�

� WBS NPEVMF � SFRVJSFá��QBUI�UP�NPEVMF@OBNFá�

7KLV ZLOO IHWFK WKH PRGXOH IURP D SDWK UHODWLYH WR WKH FXUUHQW ILOH ZH DUH H[HFXWLQJ� :H ZLOO FRYHUFUHDWLQJ PRGXOHV LQ D ODWHU VHFWLRQ�

,Q WKLV IRUPDW \RX FDQ XVH DQ DEVROXWH SDWK �VWDUWLQJ ZLWK ٪�٫� RU D UHODWLYH RQH �VWDUWLQJ ZLWK ٪�٫��

0RGXOHV DUH ORDGHG RQO\ RQFH SHU SURFHVV� WKDW LV� ZKHQ \RX KDYH VHYHUDO UHTXLUH FDOOV WR WKH VDPHPRGXOH� 1RGH FDFKHV WKH UHTXLUH FDOO LI LW UHVROYHV WR WKH VDPH ILOH� :KLFK OHDGV XV WR WKH QH[W FKDSWHU�

+RZ 1RGH UHVROYHV D PRGXOH SDWK

6R� KRZ GRHV QRGH UHVROYH D FDOO WR ٪UHTXLUH�PRGXOHBSDWK�٫" +HUH LV WKH UHFLSH�

&RUH PRGXOHV

7KHUH DUH D OLVW RI FRUH PRGXOHV� ZKLFK 1RGH LQFOXGHV LQ WKH GLVWULEXWLRQ ELQDU\� ,I \RX UHTXLUH RQHRI WKRVH PRGXOHV� 1RGH MXVW UHWXUQV WKDW PRGXOH DQG WKH UHTXLUH�� HQGV�

0RGXOHV ZLWK FRPSOHWH RU UHODWLYH SDWK

,I WKH PRGXOH SDWK EHJLQV ZLWK ٪��٫ RU ٪�٫� 1RGH WULHV WR ORDG WKH PRGXOH DV D ILOH� ,I LW GRHV QRWVXFFHHG� LW WULHV WR ORDG WKH PRGXOH DV D GLUHFWRU\�

Page 30: Handson Nodejs

0RGXOHV DQG 130 ��

$V D ILOH

:KHQ ORDGLQJ DV D ILOH� LI WKH ILOH H[LVWV� 1RGH MXVW ORDGV LW DV -DYD6FULSW WH[W� ,I QRW� LW WULHV GRLQJ WKHVDPH E\ DSSHQGLQJ ٪�MV٫ WR WKH JLYHQ SDWK� ,I QRW� LW WULHV DSSHQGLQJ ٪�QRGH٫ DQG ORDG LW DV D ELQDU\DGG�RQ�

$V D GLUHFWRU\

,I DSSHQGLQJ ٪�SDFNDJH�MVRQ٫ LV D ILOH� WU\ ORDGLQJ WKH SDFNDJH GHILQLWLRQ DQG ORRN IRU D ٪PDLQ٫ ILHOG�7U\ WR ORDG LW DV D ILOH�

,I XQVXFFHVVIXO� WU\ WR ORDG LW E\ DSSHQGLQJ ٪�LQGH[٫ WR LW�

$V DQ LQVWDOOHG PRGXOH

,I WKH PRGXOH SDWK GRHV QRW EHJLQ ZLWK ٪�٫ RU ٪�٫ RU LI ORDGLQJ LW ZLWK FRPSOHWH RU UHODWLYH SDWKV GRHVQRW ZRUN� 1RGH WULHV WR ORDG WKH PRGXOH DV D PRGXOH WKDW ZDV SUHYLRXVO\ LQVWDOOHG� )RU WKDW LW DGGV٪�QRGHBPRGXOHV٫ WR WKH FXUUHQW GLUHFWRU\ DQG WULHV WR ORDG WKH PRGXOH IURP WKHUH� ,I LW GRHV QRWVXFFHHG LW WULHV DGGLQJ ٪�QRGHBPRGXOHV٫ WR WKH SDUHQW GLUHFWRU\ DQG ORDG WKH PRGXOH IURP WKHUH� ,ILW GRHV QRW VXFFHHG LW PRYHV DJDLQ WR WKH SDUHQW GLUHFWRU\ DQG VR RQ� XQWLO HLWKHU WKH PRGXOH LV IRXQGRU WKH URRW RI WKH WUHH LV IRXQG�

7KLV PHDQV WKDW \RX FDQ SXW \RXU 1RGH PRGXOHV LQWR \RXU DSS GLUHFWRU\� DQG 1RGH ZLOO ILQG WKRVH�

/DWHU ZH ZLOO VHH KRZ XVLQJ WKLV IHDWXUH WRJHWKHU ZLWK 130 ZH FDQ EXQGOH DQG ٪IUHH]H٫ \RXUDSSOLFDWLRQ GHSHQGHQFLHV�

$OVR \RX FDQ� IRU LQVWDQFH� KDYH D QRGHBPRGXOHV GLUHFWRU\ RQ WKH KRPH IROGHU RI HDFK XVHU� DQG VRRQ� 1RGH WULHV WR ORDG PRGXOHV IURP WKHVH GLUHFWRULHV� VWDUWLQJ ILUVW ZLWK WKH RQH WKDW LV FORVHVW XSWKH SDWK�

130 � 1RGH 3DFNDJH 0DQDJHU

130KDV EHFRPH WKH VWDQGDUG IRUPDQDJLQJ1RGH SDFNDJHV WKURXJKRXW WLPH� DQG WLJKW FROODERUDWLRQEHWZHHQ ,VDDF 6FKOXHWHU � WKH RULJLQDO DXWKRU RI 130 � DQG 5\DQ 'DKO � WKH DXWKRU DQG PDLQWDLQHURQ 1RGH � KDV IXUWKHU WLJKWHQHG WKLV UHODWLRQVKLS WR WKH SRLQW ZKHUH� VWDUWLQJ DW YHUVLRQ ������ 1RGHVXSSRUWV WKH SDFNDJH�MVRQ ILOH IRUPDW WR LQGLFDWH GHSHQGHQFLHV DQG SDFNDJH VWDUWLQJ ILOH� 130 LV DOVRLQVWDOOHG ZKHQ \RX LQVWDOO 1RGH�

*OREDO YV� /RFDO

130 KDV WZR IXQGDPHQWDOO\ GLIIHUHQW ZD\V RI ZRUNLQJ� ORFDO DQG JOREDO�

,Q WKH JOREDO PRGH� DOO SDFNDJHV DUH LQVWDOOHG LQVLGH D VKDUHG IROGHU� DQG \RX FDQ NHHS RQO\ RQHYHUVLRQ RI HDFK SDFNDJH�

Page 31: Handson Nodejs

0RGXOHV DQG 130 ��

,Q ORFDO PRGH \RX FDQ KDYH GLIIHUHQW LQVWDOOHG SDFNDJHV SHU GLUHFWRU\� ,Q WKLV PRGH 130 NHHSV DORFDO GLUHFWRU\ QDPHG ٪QRGHBPRGXOHV٫ ZKHUH LW NHHSV WKH ORFDO PRGXOHV LQVWDOOHG� %\ VZLWFKLQJGLUHFWRULHV \RX DUH LQVLGH GLIIHUHQW ORFDO FRQWH[WV WKDW FDQ KDYH GLIIHUHQW PRGXOHV LQVWDOOHG�

130 ZRUNV LQ ORFDO PRGH E\ GHIDXOW� 7R HQDEOH JOREDO PRGH \RX PXVW H[SOLFLWO\ XVH WKH ٪�J٫ VZLWFKWR DQ\ RI WKH IROORZLQJ FRPPDQGV�

130 FRPPDQGV

130 FDQ EH XVHG RQ WKH FRPPDQG OLQH� 7KH EDVLF FRPPDQGV DUH�

@

QSP OV >ILOWHU@

8VH WKLV WR VHH WKH OLVW RI DOO SDFNDJHV DQG WKHLU YHUVLRQV �QSP OV ZLWK QR ILOWHU�� RU ILOWHU E\ D WDJ�QSP ILOWHU WDJ�� ([DPSOHV�

/LVW DOO LQVWDOOHG SDFNDJHV�

� � OQN MT JOTUBMMFE

/LVW DOO VWDEOH SDFNDJHV�

� � OQN MT TUBCMF

<RX FDQ DOVR FRPELQH ILOWHUV�

� � OQN MT JOTUBMMFE TUBCMF

<RX FDQ DOVR XVH QSP OV WR VHDUFK E\ QDPH�

� � OQN MT GVH

�WKLV ZLOO UHWXUQ DOO SDFNDJHV WKDW KDYH ٪IXJ٫ LQVLGH LWV QDPH RU WDJV�

<RX FDQ DOVR TXHU\ LW E\ YHUVLRQ� SUHIL[HG ZLWK WKH ٪#٫ FKDUDFWHU�

� � OQN MT !���

@

QSP LQVWDOO SDFNDJH>#ILOWHUV@

:LWK WKLV FRPPDQG \RX FDQ LQVWDOO D SDFNDJH DQG DOO WKH SDFNDJHV LW GHSHQGV RQ�

7R LQVWDOO WKH ODWHVW YHUVLRQ RI D SDFNDJH GR�

Page 32: Handson Nodejs

0RGXOHV DQG 130 ��

� � OQN JOTUBMM QBDLBHF@OBNF

([DPSOH�

� � OQN JOTUBMM FYQSFTT

7R LQVWDOO D VSHFLILF YHUVLRQ RI D SDFNDJH GR�

� �OQN JOTUBMM QBDLBHF@OBNF!WFSTJPO

([DPSOH�

� � OQN JOTUBMM FYQSFTT!�����CFUB

7R LQVWDOO WKH ODWHVW ZLWKLQ D YHUVLRQ UDQJH \RX FDQ VSHFLI\� IRU LQVWDQFH�

� � OQN JOTUBMM FYQSFTT!������

� :PV DBO BMTP DPNCJOF NBOZ GJMUFST UP TFMFDU B TQFDJGJD WFSTJPO DPNCJOJOH WFSTJPO=

� SBOHF BOE � PS UBHT MJLF UIJT�

� � OQN JOTUBMM TBY!������

� "MM UIF BCPWF DPNNBOET JOTUBMM QBDLBHFT JOUP UIF MPDBM EJSFDUPSZ�5P JOTUBMM B QBD=

� LBHF HMPCBMMZ VTF UIF á�H á TXJUDI MJLF UIJT�

��

�� � OQN JOTUBMM �H FYQSFTT

>

SDFNDJHBQDPH>#YHUVLRQ@ QSP@@ٴ UP SDFNDJHBQDPH>#YHUVLRQ@ >SDFNDJHBQDPH>#YHUVLRQ@ @ٴ

8VH WKLV FRPPDQG WR XQLQVWDOO SDFNDJHV� ,I YHUVLRQV DUH RPLWWHG� WKHQ DOO WKH IRXQG YHUVLRQV DUHUHPRYHG�

([DPSOH�

� � OQN SN TBY

,I \RX ZLVK WR UHPRYH D SDFNDJH WKDW ZDV LQVWDOOHG JOREDOO\ \RX QHHG WR H[SOLFLWO\ XVH WKH ٪�J٫ VZLWFK�

Page 33: Handson Nodejs

0RGXOHV DQG 130 ��

� � OQN SN �H FYQSFTT

>

QSP@@ٴ@�< YLHZ >#@ @ٴ@�<<

7R YLHZ DOO RI D SDFNDJH LQIR� 'HIDXOWV WR WKH ODWHVW YHUVLRQ LI YHUVLRQ LV RPLWWHG�

9LHZ WKH ODWHVW LQIR RQ WKH ٪FRQQHFW٫ SDFNDJH�

� � OQN WJFX DPOOFDU

9LHZ LQIRUPDWLRQ DERXW D VSHFLILF YHUVLRQ�

� � OQN WJFX DPOOFDU!�����

)XUWKHU RQ ZH ZLOO ORRN PRUH LQWR 130 DQG KRZ LW FDQ KHOS XV EXQGOH DQG ٪IUHH]H٫ DSSOLFDWLRQGHSHQGHQFLHV�

7KH 3DFNDJH�MVRQ 0DQLIHVW

(DFK DSSOLFDWLRQ RU PRGXOH FDQ �DQG VKRXOG� KDYH D PDQLIHVW ILOH QDPHG QBDLBHF�KTPO DW LW٧V URRW�7KLV ILOHV WHOOV� DPRQJVW RWKHU WKLQJV� WKH QDPH RI WKH PRGXOH� WKH FXUUHQW YHUVLRQ RI LW DQG ZKDW LW٧VGHSHQGHQFLHV DUH�

,I D PRGXOH RU DSSOLFDWLRQ GHSHQGV RQ RWKHU PRGXOHV LW VKRXOG KDYH D QBDLBHF�KTPO ILOH DW LW٧V URRWVWDWLQJ ZKLFK PRGXOHV LW GHSHQGV RQ�

)RU LQVWDQFH� LI P\ DSSOLFDWLRQ LV QDPHG ٪P\DSS٫ DQG GHSHQGV RQ WKLUG�SDUW\ PRGXOHV SFRVFTU DQGBTZOD LW VKRXOG FRQWDLQ D SDFNDJH�MVRQ ILOH OLNH WKLV�

� \

� áOBNFá� áNZBQQá

� áWFSTJPOá� �����

� áEFQFOEFODJFTá� \

� áSFRVFTUá� á�á

� áBTZODá� á�á

� ^

� ^

7KLV PDQLIHVW VWDWHV WKDW WKLV DSSOLFDWLRQ GHSHQGV RQ DQ\ YHUVLRQ RI WKH PRGXOHV SFRVFTU DQG BTZOD�GHQRWHG E\ WKH � DV WKH YHUVLRQ VSHFLILFDWLRQ� 6KRXOG WKH DSSOLFDWLRQ UHO\ RQ VSHFLILF YHUVLRQV RI DQ\RI WKHVH PRGXOHV� LW VKRXOG VSHFLI\ WKH YHUVLRQ OLNH WKLV�

Page 34: Handson Nodejs

0RGXOHV DQG 130 ��

� \

� áOBNFá� áNZBQQá

� áWFSTJPOá� �����

� áEFQFOEFODJFTá� \

� áSFRVFTUá� á������á

� áBTZODá� á�����á

� ^

� ^

+HUH ZH٧UH W\LQJ WKH DSSOLFDWLRQ WR WKHVH WZR VSHFLILF YHUVLRQV� EXW ZH FDQ VHW WKH YHUVLRQVSHFLILFDWLRQ WR EH PRUH ORRVH�

� \

� áOBNFá� áNZBQQá

� áWFSTJPOá� �����

� áEFQFOEFODJFTá� \

� áSFRVFTUá� á�����Yá

� áBTZODá� á����Yá

� ^

� ^

,Q WKLV FDVH ZH٧UH VD\LQJ WKDW WKH DSSOLFDWLRQ GHSHQGV RQ UHTXHVW YHUVLRQ � �PDMRU� � �� �PLQRU�DQG WKDW DQ\ SDWFK YHUVLRQ LV DFFHSWDEOH� 7KH UHTXHVW YHUVLRQ ������� VKRXOG LW H[LVW� VDWLVILHV WKLVUHTXLUHPHQW� DV GRHV YHUVLRQ �������

,W٧V FRPPRQ SUDFWLVH WR GHSHQG RQ D VSHFLILF PDMRU DQG PLQRU YHUVLRQ DQG QRW VSHFLI\ WKH SDWFKYHUVLRQ� VLQFH SDWFK YHUVLRQV VKRXOG WKRHUHWLFDOO\ RQO\ VROYH LVVXHV�

,I \RX٧UH JRLQJ WR GHSOR\ \RXU DSSOLFDWLRQ LQWR VHYHUDO PDFKLQHV� FRQVLGHU VSHFLI\LQJ WKH H[DFWYHUVLRQ� SLQ GRZQ WKH PDMRU� PLQRU DQG SDWFK YHUVLRQV RI HDFK PRGXOH� 7KLV SUHYHQWV KDYLQJ WZRGLVWLQFW 1RGH SURFHVVHV UXQQLQJ GLIIHUHQW YHUVLRQV RI PRGXOHV WKDW PD\ FDXVH GLIIHUHQW EHKDYLRXU�SUHYHQWLQJ EXJV IURP EHLQJ HDVLO\ UHSURGXFHG DQG WUDFHG�

Page 35: Handson Nodejs

8WLOLWLHVFRQVROH

1RGH SURYLGHV D JOREDO ٪FRQVROH٫ REMHFW WR ZKLFK \RX FDQ RXWSXW VWULQJV XVLQJ�

� DPOTPMF�MPHá)FMMPá�

7KLV VLPSO\ RXWSXWV WKH VWULQJ LQWR WKH SURFHVV VWGRXW DIWHU IRUPDWWLQJ LW� <RX FDQ SDVV LQ� LQVWHDG RID VWULQJ� DQ REMHFW OLNH WKLV�

� WBS B � \�� USVF �� GBMTF^�

� DPOTPMF�MPHB� �� �� \ ���� USVF ���� GBMTF ^

,Q WKLV FDVH FRQVROH�ORJ RXWSXWV WKH REMHFW XVLQJ XWLO�LQVSHFW �FRYHUHG ODWHU��

<RX FDQ DOVR XVH VWULQJ LQWHUSRODWLRQ OLNH WKLV�

� WBS B � \�� USVF �� GBMTF^�

� DPOTPMF�MPH�5IJT JT B OVNCFS� �E BOE UIJT JT B TUSJOH� �T BOE UIJT JT BO PCKFD=

� U PVUQVUUFE BT +40/� �K� �� �)FMMP� B�

:KLFK RXWSXWV�

� 5IJT JT B OVNCFS� �� BOE UIJT JT B TUSJOH� )FMMP BOE UIJT JT BO PCKFDU PVUQVUUF=

� E BT +40/� \á�á�USVF á�á�GBMTF^

FRQVROH DOVR DOORZV \RX WR ZULWH LQWR WKH WKH VWGHUU XVLQJ�

� DPOTPMF�XBSOá8BSOJOHàá�

DQG WR SULQW D VWDFN WUDFH�

Page 36: Handson Nodejs

8WLOLWLHV ��

� DPOTPMF�USBDF�

� 5SBDF�

� BU <PCKFDU $POUFYU>����

� BU *OUFSGBDF� SFQM�KT�������

� BU *OUFSGBDF�FNJU FWFOUT�KT������

� BU *OUFSGBDF�@PO-JOF SFBEMJOF�KT�������

� BU *OUFSGBDF�@MJOF SFBEMJOF�KT������

� BU *OUFSGBDF�@UUZ8SJUF SFBEMJOF�KT�������

�� BU 3FBE4USFBN� SFBEMJOF�KT������

�� BU 3FBE4USFBN�FNJU FWFOUT�KT������

�� BU 3FBE4USFBN�@FNJU,FZ UUZ@QPTJY�KT�������

�� BU 3FBE4USFBN�PO%BUB UUZ@QPTJY�KT������

XWLO

1RGH KDV DQ XWLO PRGXOH ZKLFK EXQGOHV VRPH IXQFWLRQV OLNH�

� WBS VUJM � SFRVJSF�VUJM��

� VUJM�MPH�)FMMP��

ZKLFK RXWSXWV D WKH FXUUHQW WLPHVWDPS DQG WKH JLYHQ VWULQJ OLNH WKLV�

� �� .BS �������� � )FMMP

7KH LQVSHFW IXQFWLRQ LV D QLFH XWLOLW\ ZKLFK FDQ DLG LQ TXLFN GHEXJJLQJ E\ LQVSHFWLQJ DQG SULQWLQJDQ REMHFW SURSHUWLHV OLNH WKLV�

� WBS VUJM � SFRVJSF�VUJM��

� WBS B � \�� USVF �� GBMTF^�

� DPOTPMF�MPHVUJM�JOTQFDUB�

� �� �� \ ���� USVF ���� GBMTF ^

XWLO�LQVSHFW DFFHSWV PRUH DUJXPHQWV� ZKLFK DUH�

� VUJM�JOTQFDUPCKFDU TIPX)JEEFO EFQUI � � TIPX$PMPST�

Page 37: Handson Nodejs

8WLOLWLHV ��

WKH VHFRQG DUJXPHQW� VKRZ+LGGHQ VKRXOG EH WXUQHG RQ LI \RX ZLVK LQVSHFW WR VKRZ \RX QRQ�HQXPHUDEOH SURSHUWLHV� ZKLFK DUH SURSHUWLHV WKDW EHORQJ WR WKH REMHFW SURWRW\SH FKDLQ� QRW WKH REMHFWLWVHOI� GHSWK� WKH WKLUG DUJXPHQW� LV WKH GHIDXOW GHSWK RQ WKH REMHFW JUDSK LW VKRXOG VKRZ� 7KLV LV XVHIXOIRU LQVSHFWLQJ ODUJH REMHFWV� 7R UHFXUVH LQGHILQLWHO\� SDVV D QXOO YDOXH�

7LS� XWLO�LQVSHFW NHHSV WUDFN RI WKH YLVLWHG REMHFWV� VR FLUFXODU GHSHQGHQFLHV DUH QR SUREOHP� DQG ZLOODSSHDU DV ٪>&LUFXODU@٫ RQ WKH RXWSXWWHG VWULQJ�

7KH XWLO PRGXOH KDV VRPH RWKHU QLFHWLHV� VXFK DV LQKHULWDQFH� ZKLFK ZLOO EH FRYHUHG LQ D PRUHDSSURSULDWH FKDSWHU�

Page 38: Handson Nodejs

%XIIHUV1DWLYHO\� -DYD6FULSW LV QRW YHU\ JRRG DW KDQGOLQJ ELQDU\ GDWD� VR 1RGH DGGV D QDWLYH EXIIHULPSOHPHQWDWLRQ ZLWK D -DYD6FULSW ZD\ RI PDQLSXODWLQJ LW� ,W٧V WKH VWDQGDUG ZD\ LQ 1RGH WR WUDQVSRUWGDWD�

*HQHUDOO\� \RX FDQ SDVV EXIIHUV RQ HYHU\ 1RGH $3, UHTXLULQJ GDWD WR EH VHQW�$OVR� ZKHQ UHFHLYLQJ GDWD RQ D FDOOEDFN� \RX JHW D EXIIHU �H[FHSWZKHQ \RX VSHFLI\ D VWUHDP HQFRGLQJ�LQ ZKLFK FDVH \RX JHW D 6WULQJ��7KLV ZLOO EH FRYHUHG ODWHU�

<RX FDQ FUHDWH D %XIIHU IURP DQ 87)�� VWULQJ OLNH WKLV�

� WBS CVG � OFX #VGGFS�)FMMP 8PSME�

<RX FDQ DOVR FUHDWH D EXIIHU IURP VWULQJV ZLWK RWKHU HQFRGLQJV� DV ORQJ DV \RX SDVV LW DV WKH VHFRQGDUJXPHQW�

� WBS CVG � OFX #VGGFS��C��GEF���DF� �CBTF����

$FFHSWHG HQFRGLQJV DUH� ٪DVFLL٫� ٪XWI�٫ DQG ٪EDVH��٫�

RU \RX FDQ FUHDWH D QHZ HPSW\ EXIIHU ZLWK D VSHFLILF VL]H�

� WBS CVG � OFX #VGGFS�����

DQG \RX FDQ PDQLSXODWH LW�

� CVG<��> � ��� �� TFU CZUF �� UP ��

<RX FDQ DOVR FRQYHUW LW WR D 87)���HQFRGHG VWULQJ�

� WBS TUS � CVG�UP4USJOH�

RU LQWR D VWULQJ ZLWK DQ DOWHUQDWLYH HQFRGLQJ�

Page 39: Handson Nodejs

%XIIHUV ��

� WBS TUS � CVG�UP4USJOH�CBTF����

87)�� LV WKH GHIDXOW HQFRGLQJ IRU 1RGH� VR� LQ D JHQHUDO ZD\� LI \RX RPLW LW DV ZH GLG RQ WKHEXIIHU�WR6WULQJ�� FDOO� 87)�� ZLOO EH DVVXPHG�

6OLFH D EXIIHU

$ EXIIHU FDQ EH VOLFHG LQWR D VPDOOHU EXIIHU E\ XVLQJ WKH DSSURSULDWHO\ QDPHG VOLFH�� PHWKRG OLNHWKLV�

� WBS CVGGFS � OFX #VGGFS�UIJT JT UIF TUSJOH JO NZ CVGGFS��

� WBS TMJDF � CVGGFS�TMJDF�� ���

+HUH ZH DUH VOLFLQJ WKH RULJLQDO EXIIHU WKDW KDV �� E\WHV LQWR D QHZ EXIIHU WKDW KDV �� E\WHV HTXDO WRWKH ��WK WR ��WK E\WHV RQ WKH RULJLQDO EXIIHU�

1RWH WKDW WKH VOLFH IXQFWLRQ GRHV QRW FUHDWH QHZ EXIIHU PHPRU\� LW XVHV WKH RULJLQDO XQWRXFKHG EXIIHUXQGHUQHDWK�

7LS� ,I \RX DUH DIUDLG \RX ZLOO EH ZDVWLQJ SUHFLRXV PHPRU\ E\ NHHSLQJ WKH ROG EXIIHU DURXQG ZKHQVOLFLQJ LW� \RX FDQ FRS\ LW LQWR DQRWKHU OLNH WKLV�

&RS\ D EXIIHU

<RX FDQ FRS\ D SDUW RI D EXIIHU LQWR DQRWKHU SUH�DOORFDWHG EXIIHU OLNH WKLV�

� WBS CVGGFS � OFX #VGGFS�UIJT JT UIF TUSJOH JO NZ CVGGFS��

� WBS TMJDF � OFX #VGGFS���

� WBS UBSHFU4UBSU � �

� TPVSDF4UBSU � ��

� TPVSDF&OE � ���

� CVGGFS�DPQZTMJDF UBSHFU4UBSU TPVSDF4UBSU TPVSDF&OE�

+HUH ZH DUH FRS\LQJ SDUW RI EXIIHU LQWR VOLFH� EXW RQO\ SRVLWLRQV �� WKURXJK ���

%XIIHU ([HUFLVHV

([HUFLVH �

&UHDWH DQ XQLQLWLDOL]HG EXIIHU ZLWK ��� E\WHV OHQJWK DQG ILOO LW ZLWK E\WHV ZLWK YDOXHV VWDUWLQJ IURP� WR ��� $QG WKHQ SULQW LWV FRQWHQWV�

Page 40: Handson Nodejs

%XIIHUV ��

([HUFLVH �

'R ZKDW LV DVNHG RQ WKH SUHYLRXV H[HUFLVH DQG WKHQ VOLFH WKH EXIIHU ZLWK E\WHV UDQJLQJ �� WR ��� $QGWKHQ SULQW LW�

([HUFLVH �

'R ZKDW LV DVNHG RQ H[HUFLVH � DQG WKHQ FRS\ E\WHV UDQJLQJ �� WR �� LQWR D QHZ EXIIHU� $QG WKHQSULQW LW�

Page 41: Handson Nodejs

(YHQW (PLWWHU2Q 1RGH PDQ\ REMHFWV FDQ HPLW HYHQWV� )RU LQVWDQFH� D 7&3 VHUYHU FDQ HPLW D ٦FRQQHFW٧ HYHQW HYHU\WLPH D FOLHQW FRQQHFWV� 2U D ILOH VWUHDP UHTXHVW FDQ HPLW D ٦GDWD٧ HYHQW�

�DGG/LVWHQHU

<RX FDQ OLVWHQ IRU WKHVH HYHQWV E\ FDOOLQJ RQH RI WKHVH REMHFWV٧ ٪DGG/LVWHQHU٫ PHWKRG� SDVVLQJ LQ DFDOOEDFN IXQFWLRQ� )RU LQVWDQFH� D ILOH 5HDG6WUHDP FDQ HPLW D ٪GDWD٫ HYHQW HYHU\ WLPH WKHUH LV VRPHGDWD DYDLODEOH WR UHDG�

,QVWHDG RI XVLQJ WKH ٪DGG/LVWHQHU٫ IXQFWLRQ� \RX FDQ DOVR XVH WKH ٪RQ٫ PHWKRG� ZKLFK LV VLPSO\ DQDOLDV IRU ٪DGG/LVWHQHU٫�

� WBS GT � SFRVJSF�GT�� �� HFU UIF GT NPEVMF

� WBS SFBE4USFBN � GT�DSFBUF3FBE4USFBN��FUD�QBTTXE��

� SFBE4USFBN�PO�EBUB� GVODUJPOEBUB \

� DPOTPMF�MPHEBUB�

� ^�

� SFBE4USFBN�PO�FOE� GVODUJPO \

� DPOTPMF�MPH�GJMF FOEFE��

� ^�

+HUH ZH DUH ELQGLQJ WR WKH UHDG6WUHDP٧V ٪GDWD٫ DQG ٪HQG٫ HYHQWV� SDVVLQJ LQ FDOOEDFN IXQFWLRQV WRKDQGOH HDFK RI WKHVH FDVHV� :KHQ RQH RI WKHVH HYHQWV KDSSHQV� WKH UHDG6WUHDP ZLOO FDOO WKH FDOOEDFNIXQFWLRQ ZH SDVV LQ�

<RX FDQ HLWKHU SDVV LQ DQ DQRQ\PRXV IXQFWLRQ DV ZH DUH GRLQJ KHUH� RU \RX FDQ SDVV D IXQFWLRQ QDPHIRU D IXQFWLRQ DYDLODEOH RQ WKH FXUUHQW VFRSH� RU HYHQ D YDULDEOH FRQWDLQLQJ D IXQFWLRQ�

�RQFH

<RX PD\ DOVR ZDQW WR OLVWHQ IRU DQ HYHQW H[DFWO\ RQFH� )RU LQVWDQFH� LI \RX ZDQW WR OLVWHQ WR WKH ILUVWFRQQHFWLRQ RQ D VHUYHU� \RX VKRXOG GR VRPHWKLQJ OLNH WKLV�

Page 42: Handson Nodejs

(YHQW (PLWWHU ��

� TFSWFS�PODF�DPOOFDUJPO� GVODUJPO TUSFBN \

� DPOTPMF�MPH�"I XF IBWF PVS GJSTU VTFS�

� ^�

7KLV ZRUNV H[DFWO\ OLNH RXU ٪RQ٫ H[DPSOH� H[FHSW WKDW RXU FDOOEDFN IXQFWLRQ ZLOO EH FDOOHG DW PRVWRQFH� ,W KDV WKH VDPH HIIHFW DV WKH IROORZLQJ FRGH�

� GVODUJPO DPOO-JTUFOFSTUSFBN \

� DPOTPMF�MPH�"I XF IBWF PVS GJSTU VTFS�

� TFSWFS�SFNPWF-JTUFOFS�DPOOFDUJPO� DPOO-JTUFOFS�

� ^

� TFSWFS�PO�DPOOFDUJPO� DPOO-JTUFOFS�

+HUH ZH DUH XVLQJ UHPRYH/LVWHQHU� ZKLFK DOVR EHORQJV WR WKH (YHQW(PLWWHU SDWWHUQ� ,W DFFHSWV WKHHYHQW QDPH DQG WKH IXQFWLRQ LW VKRXOG UHPRYH�

�UHPRYH$OO/LVWHQHUV

,I \RX HYHU QHHG WR� \RX FDQ DOVR UHPRYH DOO OLVWHQHUV IRU DQ HYHQW IURP DQ (YHQW (PLWWHU E\ VLPSO\FDOOLQJ

� TFSWFS�SFNPWF"MM-JTUFOFST�DPOOFDUJPO��

&UHDWLQJ DQ (YHQW (PLWWHU

,I \RX DUH LQWHUHVWHG LQ XVLQJ WKLV (YHQW (PLWWHU SDWWHUQ � DQG \RX VKRXOG � WKURXJKRXW \RXUDSSOLFDWLRQ� \RX FDQ� <RX FDQ FUHDWH D SVHXGR�FODVV DQG PDNH LW LQKHULW IURP WKH (YHQW(PLWWHU OLNHWKLV�

� WBS &WFOU&NJUUFS � SFRVJSF�FWFOUT��&WFOU&NJUUFS

� VUJM � SFRVJSF�VUJM��

� �� )FSF JT UIF .Z$MBTT DPOTUSVDUPS�

� WBS .Z$MBTT � GVODUJPOPQUJPO� PQUJPO� \

� UIJT�PQUJPO� � PQUJPO��

� UIJT�PQUJPO� � PQUJPO��

� ^

�� VUJM�JOIFSJUT.Z$MBTT &WFOU&NJUUFS�

XWLO�LQKHULWV LV VHWWLQJ XS WKH SURWRW\SH FKDLQ VR WKDW \RX JHW WKH (YHQW(PLWWHU SURWRW\SH PHWKRGVDYDLODEOH WR \RXU 0\&ODVV LQVWDQFHV�

7KLV ZD\ LQVWDQFHV RI 0\&ODVV FDQ HPLW HYHQWV�

Page 43: Handson Nodejs

(YHQW (PLWWHU ��

� .Z$MBTT�QSPUPUZQF�TPNF.FUIPE � GVODUJPO \

� UIJT�FNJU�DVTUPN FWFOU� �TPNF BSHVNFOUT��

� ^

+HUH ZH DUH HPLWLQJ DQ HYHQW QDPHG ٪FXVWRP HYHQW٫� VHQGLQJ DOVR VRPH GDWD �٪VRPH DUJXPHQWV٫ LQWKLV FDVH��

1RZ FOLHQWV RI 0\&ODVV LQVWDQFHV FDQ OLVWHQ WR ٪FXVWRP HYHQW٫ HYHQWV OLNH WKLV�

� WBS NZ*OTUBODF � OFX .Z$MBTT� ��

� NZ*OTUBODF�PO�DVTUPN FWFOU� GVODUJPO \

� DPOTPMF�MPH�HPU B DVTUPN FWFOU�

� ^�

7LS� 7KH (YHQW (PLWWHU LV D QLFH ZD\ RI HQIRUFLQJ WKH GHFRXSOLQJ RI LQWHUIDFHV� D VRIWZDUH GHVLJQWHFKQLTXH WKDW LPSURYHV WKH LQGHSHQGHQFH IURP VSHFLILF LQWHUIDFHV� PDNLQJ \RXU FRGH PRUH IOH[LEOH�

(YHQW (PLWWHU ([HUFLVHV

([HUFLVH �

%XLOG D SVHXGR�FODVV QDPHG ٪7LFNHU٫ WKDW HPLWV D ٪WLFN٫ HYHQW HYHU\ � VHFRQG�

([HUFLVH �

%XLOG D VFULSW WKDW LQVWDQWLDWHV RQH 7LFNHU DQG ELQG WR WKH ٪WLFN٫ HYHQW� SULQWLQJ ٪7,&.٫ HYHU\ WLPHLW JHWV RQH�

Page 44: Handson Nodejs

7LPHUV1RGH LPSOHPHQWV WKH WLPHUV $3, DOVR IRXQG LQ ZHE EURZVHUV� 7KH RULJLQDO $3, LV D ELW TXLUN\� EXWLW KDVQ٧W EHHQ FKDQJHG IRU WKH VDNH RI FRQVLVWHQF\�

VHW7LPHRXW

VHW7LPHRXW OHWV \RX VFKHGXOH DQ DUELWUDU\ IXQFWLRQ WR EH H[HFXWHG LQ WKH IXWXUH� $Q H[DPSOH�

� WBS UJNFPVU � ����� �� � TFDPOET

� TFU5JNFPVUGVODUJPO \

� DPOTPMF�MPH�UJNFE PVU�

� ^ UJNFPVU�

7KLV FRGH ZLOO UHJLVWHU D IXQFWLRQ WR EH FDOOHG ZKHQ WKH WLPHRXW H[SLUHV� $JDLQ� DV LQ DQ\ SODFH LQ-DYD6FULSW� \RX FDQ SDVV LQ DQ LQOLQH IXQFWLRQ� WKH QDPH RI D IXQFWLRQ RU D YDULDEOH ZKRVH YDOXH LV DIXQFWLRQ�

<RX FDQ XVH VHW7LPHRXW ZLWK D WLPHRXW YDOXH RI � VR WKDW WKH IXQFWLRQ \RX SDVV JHWV H[HFXWHG VRPHWLPH DIWHU WKH VWDFN FOHDUV� EXW ZLWK QR ZDLWLQJ� 7KLV FDQ EH XVHG WR� IRU LQVWDQFH VFKHGXOH D IXQFWLRQWKDW GRHV QRW QHHG WR EH H[HFXWHG LPPHGLDWHO\�

7KLV ZDV D WULFN VRPHWLPHV XVHG RQ EURZVHU -DYD6FULSW� EXW� DV ZH ZLOO VHH� 1RGH٧V SURFHVV�QH[W7LFN��FDQ EH XVHG LQVWHDG RI WKLV� DQG LW٧V PRUH HIILFLHQW�

FOHDU7LPHRXW

VHW7LPHRXW UHWXUQV D WLPHRXW KDQGOH WKDW \RX FDQ XVH WR GLVDEOH LW OLNH WKLV�

� WBS UJNFPVU)BOEMF � TFU5JNFPVUGVODUJPO \ DPOTPMF�MPH�ZFIBB� ^ �����

� DMFBS5JNFPVUUJNFPVU)BOEMF�

+HUH WKH WLPHRXW ZLOO QHYHU H[HFXWH EHFDXVH ZH FOHDU LW ULJKW DIWHU ZH VHW LW�

$QRWKHU H[DPSOH�

6RXUFH FRGH LQ FKDSWHUV�WLPHUV�WLPHUVB��MV

Page 45: Handson Nodejs

7LPHUV ��

� WBS UJNFPVU" � TFU5JNFPVUGVODUJPO \

� DPOTPMF�MPH�UJNFPVU "��

� ^ �����

� WBS UJNFPVU# � TFU5JNFPVUGVODUJPO \

� DPOTPMF�MPH�UJNFPVU #��

� DMFBS5JNFPVUUJNFPVU"�

� ^ �����

+HUH ZH DUH VWDUWLQJ WZR WLPHUV� RQH ZLWK � VHFRQG �WLPHRXW%� DQG WKH RWKHU ZLWK � VHFRQGV�WLPHRXW$�� %XW WLPHRXW% �ZKLFK ILUHV ILUVW� XQVFKHGXOHV WLPHRXW$ RQ OLQH �� VR WLPHRXW$ QHYHUH[HFXWHV � DQG WKH SURJUDP H[LWV ULJKW DIWHU OLQH � LV H[HFXWHG�

VHWΖQWHUYDO

6HW LQWHUYDO LV VLPLODU WR VHW WLPHRXW� EXW VFKHGXOHV D JLYHQ IXQFWLRQ WR UXQ HYHU\ ; VHFRQGV OLNH WKLV�

6RXUFH FRGH LQ FKDSWHUV�WLPHUV�WLPHUVB��MV

� WBS QFSJPE � ����� �� � TFDPOE

� WBS JOUFSWBM � TFU*OUFSWBMGVODUJPO \

� DPOTPMF�MPH�UJDL��

� ^ QFSJPE�

7KLV ZLOO LQGHILQLWHO\ NHHS WKH FRQVROH ORJJLQJ ٪WLFN٫ XQOHVV \RX WHUPLQDWH 1RGH� <RX FDQ XQVFKHGXOHDQ LQWHUYDO E\ FDOOLQJ FOHDU,QWHUYDO�

FOHDUΖQWHUYDO

FOHDU,QWHUYDO XQVFKHGXOHV D UXQQLQJ LQWHUYDO �SUHYLRXVO\ VFKHGXOHG ZLWK VHW,QWHUYDO��

� WBS JOUFSWBM � TFU*OUFSWBM����DMFBS*OUFSWBMJOUFSWBM�

+HUH ZH DUH XVLQJ WKH VHW,QWHUYDO UHWXUQ YDOXH VWRUHG RQ WKH LQWHUYDO YDULDEOH WR XQVFKHGXOH LW RQOLQH ��

VHWΖPPHGLDWH

<RX FDQ DOVR VFKHGXOH D FDOOEDFN IXQFWLRQ WR UXQ RQ WKH QH[W UXQ RI WKH HYHQW ORRS� <RX FDQ XVH LWOLNH WKLV�

Page 46: Handson Nodejs

7LPHUV ��

� TFU*NNFEJBUFGVODUJPO \

� �� UIJT SVOT PO UIF OFYU FWFOU MPPQ

� DPOTPMF�MPH�ZBZ�

� ^�

$V ZH VDZ� WKLV PHWKRG LV SUHIHUHG WR VHW7LPHRXW�IQ� �� EHFDXVH LW LV PRUH HIILFLHQW�

(VFDSLQJ WKH HYHQW ORRS

2Q HDFK ORRS� WKH HYHQW ORRS H[HFXWHV WKH TXHXHG ,�2 HYHQWV VHTXHQWLDOO\ E\ FDOOLQJ WKH DVVRFLDWHGFDOOEDFNV� ,I� RQ DQ\ RI WKH FDOOEDFNV \RX WDNH WRR ORQJ� WKH HYHQW ORRS ZRQ٧W EH SURFHVVLQJ RWKHUSHQGLQJ ,�2 HYHQWV PHDQZKLOH� 7KLV FDQ OHDG WR DQ LQFUHDVHG ODWHQF\ LQ RXU DSSOLFDWLRQ RU VHUYLFH�:KHQ H[HFXWLQJ VRPHWKLQJ WKDW PD\ WDNH WRR ORQJ� \RX FDQ GHOD\ WKH H[HFXWLRQ XQWLO WKH QH[W HYHQWORRS� VR ZDLWLQJ HYHQWV ZLOO EH SURFHVVHG PHDQZKLOH� ,W٧V OLNH JRLQJ WR WKH EDFN RI WKH OLQH RQ DZDLWLQJ OLQH�

7R HVFDSH WKH FXUUHQW HYHQW ORRS \RX FDQ XVH VHW,PPHGLDWH�� OLNH WKLV�

� TFU*NNFEJBUFGVODUJPO \

� �� EP TPNFUIJOH

� ^�

<RX FDQ XVH WKLV WR GHOD\ SURFHVVLQJ WKDW GRHV QRW KDYH WR UXQ LPPHGLDWHO\� XQWLO WKH QH[W HYHQWORRS�

)RU LQVWDQFH� \RX PD\ QHHG WR UHPRYH D ILOH� EXW SHUKDSV \RX GRQ٧W QHHG WR GR LW EHIRUH UHSO\LQJ WRWKH FOLHQW� 6R� \RX FRXOG GR VRPHWKLQJ OLNH WKLV�

� TUSFBN�PO�EBUB� GVODUJPOEBUB \

� TUSFBN�FOE�NZ SFTQPOTF��

� TFU*NNFEJBUFGVODUJPO \

� GT�VOMJOL�QBUI�UP�GJMF��

� ^�

� ^�

$ QRWH RQ WDLO UHFXUVLRQ

/HW٧V VD\ \RX ZDQW WR VFKHGXOH D IXQFWLRQ WKDW GRHV VRPH ,�2 � OLNH SDUVLQJ D ORJ ILOH � WR H[HFXWHSHULRGLFDOO\� DQG \RX ZDQW WR JXDUDQWHH WKDW QR WZR RI WKRVH IXQFWLRQV DUH H[HFXWLQJ DW WKH VDPHWLPH� 7KH EHVW ZD\ LV QRW WR XVH D VHW,QWHUYDO� VLQFH \RX GRQ٧W KDYH WKDW JXDUDQWHH� 7KH LQWHUYDO ZLOOILUH UHJDUGOHVV RI ZKHWKHU WKH IXQFWLRQ KDV ILQLVKHG LWV GXW\ RU QRW�

6XSSRVLQJ WKHUH LV DQ DV\QFKURQRXV IXQFWLRQ FDOOHG ٪DV\QF٫ WKDW SHUIRUPV VRPH ,�2 DQG JHWV DFDOOEDFN WR EH LQYRNHG ZKHQ ILQLVKHG� :H ZDQW WR FDOO LW HYHU\ VHFRQG� VR�

Page 47: Handson Nodejs

7LPHUV ��

� WBS JOUFSWBM � ����� �� � TFDPOE

� TFU*OUFSWBMGVODUJPO \

� BTZODGVODUJPO \

� DPOTPMF�MPH�BTZOD JT EPOF�

� ^�

� ^ JOUFSWBM�

,I DQ\ WZR DV\QF�� FDOOV FDQ٧W RYHUODS� \RX DUH EHWWHU RII XVLQJ WDLO UHFXUVLRQ OLNH WKLV�

� WBS JOUFSWBM � ����� �� � TFDPOE

� GVODUJPO TDIFEVMF \

� TFU5JNFPVUGVODUJPO \

� BTZODGVODUJPO \

� DPOTPMF�MPH�BTZOD JT EPOF�

� TDIFEVMF�

� ^�

� ^ JOUFSWBM

� ^�

+HUH ZH DUH GHFODULQJ D IXQFWLRQ QDPHG VFKHGXOH �OLQH �� DQG ZH DUH LQYRNLQJ LW LPPHGLDWHO\ DIWHUZH DUH GHFODULQJ LW �OLQH ���

7KLV IXQFWLRQ VFKHGXOHV DQRWKHU IXQFWLRQ WR H[HFXWH ZLWKLQ RQH VHFRQG �OLQH � WR ��� 7KLV RWKHUIXQFWLRQ ZLOO WKHQ FDOO DV\QF�� �OLQH ��� DQG RQO\ ZKHQ DV\QF LV GRQH ZH VFKHGXOH D QHZ RQH E\FDOOLQJ VFKHGXOH�� DJDLQ �OLQH ��� WKLV WLPH LQVLGH WKH VFKHGXOH IXQFWLRQ� 7KLV ZD\ ZH FDQ EH VXUH WKDWQR WZR FDOOV WR DV\QF H[HFXWH VLPXOWDQHRXVO\ LQ WKLV FRQWH[W�

7KH GLIIHUHQFH LV WKDW ZH SUREDEO\ ZRQ٧W KDYH DV\QF FDOOHG HYHU\ VHFRQG �XQOHVV DV\QF WDNHV QR WLPHWR H[HFXWH�� EXW ZH ZLOO KDYH LW FDOOHG � VHFRQG DIWHU WKH ODVW RQH ILQLVKHG�

Page 48: Handson Nodejs

/RZ�OHYHO ILOH�V\VWHP1RGH KDV D QLFH VWUHDPLQJ $3, IRU GHDOLQJ ZLWK ILOHV LQ DQ DEVWUDFW ZD\� DV LI WKH\ ZHUH QHWZRUNVWUHDPV� EXW VRPHWLPHV \RX PLJKW QHHG WR JR GRZQ D OHYHO DQG GHDO ZLWK WKH ILOHV\VWHP LWVHOI�

)LUVW� D QLFH VHW RI XWLOLWLHV�

IV�VWDW DQG IV�IVWDW

<RX FDQ TXHU\ VRPH PHWD�LQIR RQ D ILOH �RU GLU� E\ XVLQJ IV�VWDW OLNH WKLV�

� WBS GT � SFRVJSF�GT��

� GT�TUBU��FUD�QBTTXE� GVODUJPOFSS TUBUT \

� JG FSS \DPOTPMF�MPHFSS�NFTTBHF� SFUVSO� ^

� DPOTPMF�MPHTUBUT�

� ��DPOTPMF�MPH�UIJT GJMF JT � � TUBUT�TJ[F � � CZUFT MPOH���

� ^�

,I \RX SULQW WKH VWDWV REMHFW LW ZLOO EH VRPHWKLQJ OLNH�

� \ EFW� ���������

� JOP� �����

� NPEF� �����

� OMJOL� �

� VJE� �

� HJE� �

� SEFW� �

� TJ[F� ����

� CMLTJ[F� ����

�� CMPDLT� �

�� BUJNF� 5IV �� .BS ���� �������� (.5

�� NUJNF� 5VF �� +VO ���� �������� (.5

�� DUJNF� 'SJ �� "VH ���� �������� (.5

�� ^

VWDWV LV D 6WDWV LQVWDQFH� ZLWK ZKLFK \RX FDQ FDOO�

Page 49: Handson Nodejs

/RZ�OHYHO ILOH�V\VWHP ��

� TUBUT�JT'JMF

� TUBUT�JT%JSFDUPSZ

� TUBUT�JT#MPDL%FWJDF

� TUBUT�JT$IBSBDUFS%FWJDF

� TUBUT�JT4ZNCPMJD-JOL

� TUBUT�JT'*'0

� TUBUT�JT4PDLFU

,I \RX KDYH D SODLQ ILOH GHVFULSWRU \RX FDQ XVH IV�IVWDW�ILOH'HVFULSWRU� FDOOEDFN� LQVWHDG�

0RUH DERXW ILOH GHVFULSWRUV ODWHU�

,I \RX DUH XVLQJ WKH ORZ�OHYHO ILOHV\VWHP $3, LQ 1RGH� \RX ZLOO JHW ILOH GHVFULSWRUV DV D ZD\ WRUHSUHVHQW ILOHV� 7KHVH ILOH GHVFULSWRUV DUH SODLQ LQWHJHU QXPEHUV WKDW UHSUHVHQW D ILOH LQ \RXU 1RGHSURFHVV� PXFK OLNH LQ & 326,; $3,V�

2SHQ D ILOH

<RX FDQ RSHQ D ILOH E\ XVLQJ IV�RSHQ OLNH WKLV�

� WBS GT � SFRVJSF�GT��

� GT�PQFO��QBUI�UP�GJMF� �S� GVODUJPOFSS GE \

� �� HPU GE

� ^�

7KH ILUVW DUJXPHQW WR IV�RSHQ LV WKH ILOH SDWK� 7KH VHFRQG DUJXPHQW FRQWDLQV WKH IODJV� LQGLFDWLQJ WKHPRGH LQ ZKLFK WKH ILOH LV WR EH RSHQHG� 7KH IODJV FDQ EH ٦U٧� ٦U�٧� ٦Z٧� ٦Z�٧� ٦D٧� RU ٦D�٧�

+HUH IROORZ WKH VHPDQWLFV IRU HDFK IODJ� WDNHQ IURP WKH IRSHQ PDQ SDJH�

U � 2SHQ WH[W ILOH IRU UHDGLQJ� 7KH VWUHDP LV SRVLWLRQHG DW WKH EHJLQQLQJ RI WKH ILOH� U� � 2SHQ IRU UHDGLQJ DQG ZULWLQJ� 7KH VWUHDP LV SRVLWLRQHG DW WKH EHJLQQLQJ RIWKH ILOH�

Z � 7UXQFDWH ILOH WR ]HUR OHQJWK RU FUHDWH WH[W ILOH IRU ZULWLQJ� 7KH VWUHDP LVSRVLWLRQHG DW WKH EHJLQQLQJ RI WKH ILOH�

Z� � 2SHQ IRU UHDGLQJ DQG ZULWLQJ� 7KH ILOH LV FUHDWHG LI LW GRHV QRW H[LVW� RWKHUZLVHLW LV WUXQFDWHG� 7KH VWUHDP LV SRVLWLRQHG DW WKH EHJLQQLQJ RI WKH ILOH�

D � 2SHQ IRU ZULWLQJ� 7KH ILOH LV FUHDWHG LI LW GRHV QRW H[LVW� 7KH VWUHDP LV SRVLWLRQHGDW WKH HQG RI WKH ILOH� 6XEVHTXHQW ZULWHV WR WKH ILOH ZLOO DOZD\V HQG XS DW WKH WKHQFXUUHQW HQG RI ILOH�

D� � 2SHQ IRU UHDGLQJ DQGZULWLQJ� 7KH ILOH LV FUHDWHG LI LW GRHV QRW H[LVW� 7KH VWUHDPLV SRVLWLRQHG DW WKH HQG RI WKH ILOH� 6XEVHTXHQW ZULWHV WR WKH ILOH ZLOO DOZD\V HQGXS DW WKH WKHQ FXUUHQW HQG RI ILOH�

2Q WKH FDOOEDFN IXQFWLRQ� \RX JHW D VHFRQG DUJXPHQW �IG�� ZKLFK LV D ILOH GHVFULSWRU� QRWKLQJ PRUHWKDQ DQ LQWHJHU WKDW LGHQWLILHV WKH RSHQ ILOH� ZKLFK \RX FDQ XVH OLNH D KDQGOHU WR UHDG DQG ZULWH IURP�

Page 50: Handson Nodejs

/RZ�OHYHO ILOH�V\VWHP ��

5HDG IURP D ILOH

2QFH LW٧V RSHQ� \RX FDQ DOVR UHDG IURP D ILOH OLNH WKLV�

6RXUFH FRGH LQ FKDSWHUV�IV�UHDG�MV

� WBS GT � SFRVJSF�GT��

� GT�PQFO��WBS�MPH�TZTUFN�MPH� �S� GVODUJPOFSS GE \

� JG FSS UISPX FSS�

� WBS SFBE#VGGFS � OFX #VGGFS����

� CVGGFS0GGTFU � �

� CVGGFS-FOHUI � SFBE#VGGFS�MFOHUI

� GJMF1PTJUJPO � ����

� GT�SFBEGE SFBE#VGGFS CVGGFS0GGTFU CVGGFS-FOHUI GJMF1PTJUJPO

�� GVODUJPOFSS SFBE#ZUFT \

�� JG FSS UISPX FSS�

�� DPOTPMF�MPH�KVTU SFBE � � SFBE#ZUFT � � CZUFT��

�� JG SFBE#ZUFT � � \

�� DPOTPMF�MPHSFBE#VGGFS�TMJDF� SFBE#ZUFT�

�� ^

�� ^�

�� ^�

+HUH ZH DUH RSHQLQJ WKH ILOH� DQG ZKHQ LW٧V RSHQHG ZH DUH DVNLQJ WR UHDG D FKXQN RI ���� E\WHV IURPLW� VWDUWLQJ DW SRVLWLRQ ��� �OLQH ��� 7KH ODVW DUJXPHQW WR WKH IV�UHDG FDOO LV D FDOOEDFN IXQFWLRQ �OLQH��� ZKLFK ZLOO EH LQYRNHG ZKHQ RQH RI WKH IROORZLQJ � KDSSHQV�

WKHUH LV DQ HUURU� VRPHWKLQJ KDV EHHQ UHDG RU QRWKLQJ FRXOG EH UHDG�

2Q WKH ILUVW DUJXPHQW� WKLV FDOOEDFN JHWV DQ HUURU LI WKHUH ZDV DQ RQH� RU QXOO� 2Q WKH VHFRQG DUJXPHQW�UHDG%\WHV� LW JHWV WKH QXPEHU RI E\WHV UHDG LQWR WKH EXIIHU� ,I WKH UHDG E\WHV LV ]HUR� WKH ILOH KDVUHDFKHG WKH HQG�

:ULWH LQWR D ILOH

7R ZULWH LQWR D ILOH GHVFULSWRU \RX FDQ XVH IV�ZULWH OLNH WKLV�

Page 51: Handson Nodejs

/RZ�OHYHO ILOH�V\VWHP ��

� WBS GT � SFRVJSF�GT��

� GT�PQFO��WBS�MPH�TZTUFN�MPH� �B� GVODUJPOFSS GE \

� WBS XSJUF#VGGFS � OFX #VGGFS�XSJUJOH UIJT TUSJOH�

� CVGGFS0GGTFU � �

� CVGGFS-FOHUI � XSJUF#VGGFS�MFOHUI

� GJMF1PTJUJPO � OVMM�

� GT�XSJUF

�� GE

�� XSJUF#VGGFS

�� CVGGFS0GGTFU

�� CVGGFS-FOHUI

�� GJMF1PTJUJPO

�� GVODUJPOFSS XSJUUFO \

�� JG FSS \ UISPX FSS� ^

�� DPOTPMF�MPH�XSPUF � � XSJUUFO � � CZUFT��

�� ^

�� �

�� ^�

+HUH ZH DUH RSHQLQJ WKH ILOH LQ DSSHQG�PRGH �٦D٧� RQ OLQH �� DQG WKHQ ZH DUH ZULWLQJ LQWR LW �OLQH ���SDVVLQJ LQ D EXIIHU ZLWK WKH GDWD ZH ZDQW ZULWWHQ� DQ RIIVHW LQVLGH WKH EXIIHU ZKHUH ZH ZDQW WR VWDUWZULWLQJ IURP� WKH OHQJWK RI ZKDW ZH ZDQW WR ZULWH� WKH ILOH SRVLWLRQ DQG D FDOOEDFN� ,Q WKLV FDVH ZHDUH SDVVLQJ LQ D ILOH SRVLWLRQ RI QXOO� ZKLFK LV WR VD\ WKDW KH ZULWHV DW WKH FXUUHQW ILOH SRVLWLRQ� +HUHZH DUH DOVR RSHQLQJ LQ DSSHQG�PRGH� VR WKH ILOH FXUVRU LV SRVLWLRQHG DW WKH HQG RI WKH ILOH�

&ORVH <RXU ILOHV

2Q DOO WKHVH H[DPSOHV ZH GLG QRW FORVH WKH ILOHV� 7KLV LV EHFDXVH WKHVH DUH VPDOO VLPSOH H[DPSOHVGHVWLQHG WR EH UXQ DQG UHWXUQHG� $OO RSHQ ILOHV ZLOO EH FORVHG RQFH WKH SURFHVV H[LWV�

,Q UHDO DSSOLFDWLRQV \RX VKRXOG NHHS WUDFN RI WKRVH ILOH GHVFULSWRUV DQG HYHQWXDOO\ FORVH WKHP XVLQJIV�FORVH�IG>� FDOOEDFN@� ZKHQ QR ORQJHU QHHGHG�

)LOH�V\VWHP ([HUFLVHV

<RX FDQ FKHFN RXW WKH VROXWLRQV DW WKH HQG RI WKLV ERRN�

([HUFLVH � � JHW WKH VL]H RI D ILOH

+DYLQJ D ILOH QDPHG D�W[W� SULQW WKH VL]H RI WKDW ILOHV LQ E\WHV�

Page 52: Handson Nodejs

/RZ�OHYHO ILOH�V\VWHP ��

([HUFLVH � � UHDG D FKXQN IURP D ILOH

+DYLQJ D ILOH QDPHG D�W[W� SULQW E\WHV �� WR ���

([HUFLVH � � UHDG WZR FKXQNV IURP D ILOH

+DYLQJ D ILOH QDPHG D�W[W� SULQW E\WHV � WR �� DQG ZKHQ GRQH� UHDG E\WHV �� WR ���

([HUFLVH � � 2YHUZULWH D ILOH

+DYLQJ D ILOH QDPHG D�W[W� 2YHUZULWH LW ZLWK WKH 87)���HQFRGHG VWULQJ ٪$%&'()*+,-/./012345678�9;<=����������DEFGHIJKLMNOPQRSTUVWXY[\]٫�

([HUFLVH � � DSSHQG WR D ILOH

+DYLQJ D ILOH QDPHG D�W[W� DSSHQG 87)���HQFRGHG VWULQJ ٪DEF٫ WR ILOH D�W[W�

([HUFLVH � � FKDQJH WKH FRQWHQW RI D ILOH

+DYLQJ D ILOH QDPHG D�W[W� FKDQJH E\WH DW SRV �� WR WKH 87)�� YDOXH RI ٪�٫�

Page 53: Handson Nodejs

+773+773 6HUYHU

<RX FDQ HDVLO\ FUHDWH DQ +773 VHUYHU LQ 1RGH� +HUH LV WKH IDPRXV KWWS VHUYHU ٪+HOOR:RUOG٫ H[DPSOH�

6RXUFH LQ ILOH�KWWS�KWWSBVHUYHUB��MV

� WBS IUUQ � SFRVJSF�IUUQ��

� WBS TFSWFS � IUUQ�DSFBUF4FSWFS�

� TFSWFS�PO�SFRVFTU� GVODUJPOSFR SFT \

� SFT�XSJUF)FBE��� \�$POUFOU�5ZQF�� �UFYU�QMBJO�^�

� SFT�XSJUF�)FMMP 8PSME�

� SFT�FOE�

� ^�

� TFSWFS�MJTUFO�����

2Q OLQH � ZH JHW WKH ٦KWWS٧ PRGXOH� IURP ZKLFK ZH FDOO FUHDWH6HUYHU�� �OLQH �� WR FUHDWH DQ +773VHUYHU�

:H WKHQ OLVWHQ IRU ٦UHTXHVW٧ W\SH HYHQWV� SDVVLQJ LQ D FDOOEDFN IXQFWLRQ WKDW WDNHV WZR DUJXPHQWV�WKH UHTXHVW REMHFW DQG WKH UHVSRQVH REMHFW� :H FDQ WKHQ XVH WKH UHVSRQVH REMHFW WR ZULWH EDFN WR WKHFOLHQW�

2Q OLQH � ZH ZULWH D KHDGHU �&RQWHQW7\SH� WH[W�SODLQ� DQG WKH +773 VWDWXV ��� �2.��2Q OLQH � ZH UHSO\ ZLWK WKH VWULQJ ٪+HOOR :RUOG�٫ DQG RQ OLQH � ZH WHUPLQDWH WKH UHTXHVW�2Q OLQH � ZH ELQG WKH VHUYHU WR WKH SRUW �����6R� LI \RX UXQ WKLV VFULSW RQ QRGH \RX FDQ WKHQ SRLQW \RXU EURZVHU WR KWWS���ORFDOKRVW����� DQG \RXVKRXOG VHH WKH ٪+HOOR :RUOG�٫ VWULQJ RQ LW�

7KLV H[DPSOH FDQ EH VKRUWHQHG WR�

6RXUFH LQ ILOH�KWWS�KWWSBVHUYHUB��MV

Page 54: Handson Nodejs

+773 ��

� SFRVJSF�IUUQ��DSFBUF4FSWFSGVODUJPOSFR SFT \

� SFT�XSJUF)FBE��� \�$POUFOU�5ZQF�� �UFYU�QMBJO�^�

� SFT�FOE�)FMMP 8PSME�

� ^�MJTUFO�����

+HUH ZH DUH JLYLQJ XS WKH LQWHUPHGLDU\ YDULDEOHV IRU VWRULQJ WKH KWWS PRGXOH �VLQFH ZH RQO\ QHHGWR FDOO LW RQFH� DQG WKH VHUYHU �VLQFH ZH RQO\ QHHG WR PDNH LW OLVWHQ RQ SRUW ������ $OVR� DV D VKRUWFXW�WKH KWWS�FUHDWH6HUYHU IXQFWLRQ DFFHSWV D FDOOEDFN IXQFWLRQ WKDW ZLOO EH LQYRNHG RQ HYHU\ UHTXHVW�

7KHUH LV RQH ODVW VKRUWFXW KHUH� WKH UHVSRQVH�HQG IXQFWLRQ FDQ DFFHSW D VWULQJ RU EXIIHU ZKLFK LW ZLOOVHQG WR WKH FOLHQW EHIRUH HQGLQJ WKH UHTXHVW�

7KH KWWS�6HUYHU5HTXHVW REMHFW

:KHQ OLVWHQLQJ IRU ٪UHTXHVW٫ HYHQWV� WKH FDOOEDFN JHWV RQH RI WKHVH REMHFWV DV WKH ILUVW DUJXPHQW� 7KLVREMHFW FRQWDLQV�

UHT�XUO

7KH 85/ RI WKH UHTXHVW� DV D VWULQJ� ,W GRHV QRW FRQWDLQ WKH VFKHPD� KRVWQDPH RU SRUW� EXW LW FRQWDLQVHYHU\WKLQJ DIWHU WKDW� <RX FDQ WU\ WKLV WR DQDO\]H WKH XUO�

6RXUFH LQ ILOH�KWWS�KWWSBVHUYHUB��MV

� SFRVJSF�IUUQ��DSFBUF4FSWFSGVODUJPOSFR SFT \

� SFT�XSJUF)FBE��� \�$POUFOU�5ZQF�� �UFYU�QMBJO�^�

� SFT�FOESFR�VSM�

� ^�MJTUFO�����

DQG FRQQHFW WR SRUW ���� XVLQJ D EURZVHU� &KDQJH WKH 85/ WR VHH KRZ LW EHKDYHV�

UHT�PHWKRG

7KLV FRQWDLQV WKH +773PHWKRG XVHG RQ WKH UHTXHVW� ,W FDQ EH� IRU H[DPSOH� ٦*(7٧� ٦3267٧� ٦'(/(7(٧RU DQ\ RWKHU RQH�

UHT�KHDGHUV

7KLV FRQWDLQV DQ REMHFW ZLWK D SURSHUW\ IRU HYHU\ +773 KHDGHU RQ WKH UHTXHVW� 7R DQDO\]H LW \RXFDQ UXQ WKLV VHUYHU�

6RXUFH LQ ILOH�KWWS�KWWSBVHUYHUB��MV

Page 55: Handson Nodejs

+773 ��

� WBS VUJM � SFRVJSF�VUJM��

� SFRVJSF�IUUQ��DSFBUF4FSWFSGVODUJPOSFR SFT \

� SFT�XSJUF)FBE��� \�$POUFOU�5ZQF�� �UFYU�QMBJO�^�

� SFT�FOEVUJM�JOTQFDUSFR�IFBEFST�

� ^�MJTUFO�����

DQG FRQQHFW \RXU EURZVHU WR SRUW ���� WR LQVSHFW WKH KHDGHUV RI \RXU UHTXHVW�

+HUH ZH DUH XVLQJ XWLO�LQVSHFW��� DQ XWLOLW\ IXQFWLRQ WKDW FDQ EH XVHG WR DQDO\]H WKH SURSHUWLHV RI DQ\REMHFW�

UHT�KHDGHUV SURSHUWLHV QDPHV DUH ORZHU�FDVH� )RU LQVWDQFH� LI WKH EURZVHU VHQW D ٪&DFKH�&RQWURO�PD[�DJH� �٫ KHDGHU� UHT�KHDGHUV ZLOO KDYH D SURSHUW\ QDPHG ٪FDFKH�FRQWURO٫ ZLWK WKH YDOXH ٪PD[�DJH� �٫ �WKLV ODVW RQH LV XQWRXFKHG��

7KH KWWS�6HUYHU5HVSRQVH REMHFW

7KH UHVSRQVH REMHFW �WKH VHFRQG DUJXPHQW IRU WKH ٪UHTXHVW٫ HYHQW FDOOEDFN IXQFWLRQ� LV XVHG WR UHSO\WR WKH FOLHQW� :LWK LW \RX FDQ�

:ULWH D KHDGHU <RX FDQ XVH UHV�ZULWH+HDG�VWDWXV� KHDGHUV�� ZKHUH KHDGHUV LV DQ REMHFW WKDWFRQWDLQV D SURSHUW\ IRU HYHU\ KHDGHU \RX ZDQW WR VHQG�

$Q H[DPSOH�

6RXUFH LQ ILOH�KWWS�KWWSBVHUYHUB��MV

� WBS VUJM � SFRVJSF�VUJM��

� SFRVJSF�IUUQ��DSFBUF4FSWFSGVODUJPOSFR SFT \

� SFT�XSJUF)FBE��� \

� �$POUFOU�5ZQF�� �UFYU�QMBJO�

� �$BDIF�$POUSPM�� �NBY�BHF������

� ^�

� SFT�FOE�)FMMP 8PSME�

� ^�MJTUFO�����

,Q WKLV H[DPSOH ZH VHW � KHDGHUV� RQH ZLWK ٪&RQWHQW�7\SH� WH[W�SODLQ٫ DQG DQRWKHU ZLWK ٪&DFKH�&RQWURO� PD[�DJH ����٫�

,I \RX VDYH WKH DERYH VRXUFH FRGH LQWR KWWSBVHUYHUB��MV DQG UXQ LW ZLWK�

Page 56: Handson Nodejs

+773 ��

� � OPEF IUUQ@TFSWFS@��KT

<RX FDQ TXHU\ LW E\ XVLQJ \RXU EURZVHU RU XVLQJ D FRPPDQG�OLQH +773 FOLHQW OLNH FXUO�

� � DVSM �J IUUQ���MPDBMIPTU�����

� )551���� ��� 0,

� $POUFOU�5ZQF� UFYU�QMBJO

� $BDIF�$POUSPM� NBY�BHF�����

� $POOFDUJPO� LFFQ�BMJWF

� 5SBOTGFS�&ODPEJOH� DIVOLFE

� )FMMP 8PSMEà

&KDQJH RU VHW D KHDGHU <RX FDQ FKDQJH D KHDGHU \RX DOUHDG\ VHW RU VHW D QHZ RQH E\ XVLQJ

� SFT�TFU)FBEFSOBNF WBMVF�

7KLV ZLOO RQO\ ZRUN LI \RX KDYHQ٧W DOUHDG\ VHQW D SLHFH RI WKH ERG\ E\ XVLQJ UHV�ZULWH���

5HPRYH D KHDGHU <RX FDQ UHPRYH D KHDGHU \RX KDYH DOUHDG\ VHW E\ FDOOLQJ�

� SFT�SFNPWF)FBEFSOBNF WBMVF�

$JDLQ� WKLV ZLOO RQO\ ZRUN LI \RX KDYHQ٧W DOUHDG\ VHQW D SLHFH RI WKH ERG\ E\ XVLQJ UHV�ZULWH�� RUUHV�HQG���

:ULWH D SLHFH RI WKH UHVSRQVH ERG\ <RX FDQ ZULWH D VWULQJ�

� SFT�XSJUF�)FMMP��

RU DQ H[LVWLQJ EXIIHU�

� WBS CVG � OFX #VGGFS�)FMMP 8PSME��

� CVG<�> � ���

� SFT�XSJUFCVGGFS�

7KLV PHWKRG FDQ� DV H[SHFWHG� EH XVHG WR UHSO\ ZLWK G\QDPLFDOO\ JHQHUDWHG VWULQJV RU D ELQDU\ ILOH�5HSO\LQJ ZLWK ELQDU\ GDWD ZLOO EH FRYHUHG ODWHU�

Page 57: Handson Nodejs

+773 ��

+773 &OLHQW

<RX FDQ LVVXH KWWS UHTXHVWV XVLQJ WKH ٪KWWS٫ PRGXOH� 1RGH LV VSHFLILFDOO\ GHVLJQHG WR EH D VHUYHU� EXWLW FDQ LWVHOI FDOO RWKHU H[WHUQDO VHUYLFHV DQG DFW DV D ٪JOXH٫ VHUYLFH� 2U \RX FDQ VLPSO\ XVH LW WR UXQ DVLPSOH KWWS FOLHQW VFULSW OLNH WKLV RQH�

KWWS�JHW��

6RXUFH LQ ILOH�KWWS�KWWSBFOLHQWB��MV

� WBS IUUQ � SFRVJSF�IUUQ��

� WBS PQUJPOT � \

� IPTU� �XXX�HPPHMF�DPN�

� QPSU� ��

� QBUI� ��JOEFY�IUNM�

� ^�

� IUUQ�HFUPQUJPOT GVODUJPOSFT \

�� DPOTPMF�MPH�HPU SFTQPOTF� � � SFT�TUBUVT$PEF�

�� ^�PO�FSSPS� GVODUJPOFSS \

�� DPOTPMF�MPH�HPU FSSPS� � � FSS�NFTTBHF

�� ^�

7KLV H[DPSOH XVHV KWWS�JHW WRPDNH DQ+773*(7 UHTXHVW WR WKH XUO KWWS���ZZZ�JRRJOH�FRP����LQGH[�KWPO�

<RX FDQ WU\ LW E\ VDYLQJ LW WR D ILOH QDPHG KWWSBFOLHQWB��MV DQG UXQQLQJ�

� � OPEF IUUQ@DMJFOU@��KT

� HPU SFTQPOTF� ���

KWWS�UHTXHVW��

8VLQJ KWWS�UHTXHVW \RX FDQ PDNH DQ\ W\SH RI +773 UHTXHVW�

� IUUQ�SFRVFTUPQUJPOT DBMMCBDL�

7KH RSWLRQV DUH�

KRVW � $ GRPDLQ QDPH RU ,3 DGGUHVV RI WKH VHUYHU WR LVVXH WKH UHTXHVW WR�

Page 58: Handson Nodejs

+773 ��

SRUW � 3RUW RI UHPRWH VHUYHU� PHWKRG� $ VWULQJ VSHFLI\LQJ WKH +773 UHTXHVW PHWKRG� 3RVVLEOH YDOXHV� ٦*(7٧ �GHIDXOW��٦3267٧� ٦387٧� DQG ٦'(/(7(٧�

SDWK� 5HTXHVW SDWK� 6KRXOG LQFOXGH TXHU\ VWULQJ DQG IUDJPHQWV LI DQ\� (�*� ٦�LQGH[�KWPO"SDJH ��٧ KHDGHUV� $Q REMHFW FRQWDLQLQJ UHTXHVW KHDGHUV�

7KH IROORZLQJ PHWKRG PDNHV LW HDV\ WR VHQG ERG\ YDOXHV �OLNH ZKHQ \RX DUH XSORDGLQJ D ILOH RUSRVWLQJ D IRUP��

6RXUFH LQ ILOH�KWWS�KWWSBFOLHQWB��MV

� WBS PQUJPOT � \

� IPTU� �XXX�HPPHMF�DPN�

� QPSU� ��

� QBUI� ��VQMPBE�

� NFUIPE� �1045�

� ^�

� WBS SFR � SFRVJSF�IUUQ��SFRVFTUPQUJPOT GVODUJPOSFT \

� DPOTPMF�MPH�45"564� � � SFT�TUBUVT$PEF�

�� DPOTPMF�MPH�)&"%&34� � � +40/�TUSJOHJGZSFT�IFBEFST�

�� SFT�TFU&ODPEJOH�VUG���

�� SFT�PO�EBUB� GVODUJPO DIVOL \

�� DPOTPMF�MPH�#0%:� � � DIVOL�

�� ^�

�� ^�

��

�� �� XSJUF EBUB UP SFRVFTU CPEZ

�� SFR�XSJUFáEBUB=Oá�

�� SFR�XSJUFáEBUB=Oá�

�� SFR�FOE�

2Q OLQHV �� DQG �� ZH DUH ZULWLQJ WKH +773 UHTXHVW ERG\ GDWD �WZR OLQHV ZLWK WKH ٪GDWD٫ VWULQJ�DQG RQ OLQH �� ZH DUH HQGLQJ WKH UHTXHVW� 2QO\ WKHQ WKH VHUYHU UHSOLHV DQG WKH UHVSRQVH FDOOEDFN JHWVDFWLYDWHG �OLQH ���

7KHQ ZH ZDLW IRU WKH UHVSRQVH� :KHQ LW FRPHV� ZH JHW D ٪UHVSRQVH٫ HYHQW� ZKLFK ZH DUH OLVWHQLQJWR RQ WKH FDOOEDFN IXQFWLRQ WKDW VWDUWV RQ OLQH �� %\ WKHQ ZH RQO\ KDYH WKH +773 VWDWXV DQG KHDGHUVUHDG\� ZKLFK ZH SULQW �OLQHV � DQG ����

7KHQ ZH ELQG WR ٪GDWD٫ HYHQWV �OLQH ���� 7KHVH KDSSHQ ZKHQ ZH JHW D FKXQN RI WKH UHVSRQVH ERG\GDWD �OLQH ����

7KLV PHFKDQLVP FDQ EH XVHG WR VWUHDP GDWD IURP D VHUYHU� $V ORQJ DV WKH VHUYHU NHHSV VHQGLQJ ERG\FKXQNV� ZH NHHS UHFHLYLQJ WKHP�

Page 59: Handson Nodejs

+773 ��

+773 ([HUFLVHV

<RX FDQ FKHFNRXW WKH VROXWLRQV DW WKH HQG RI WKLV ERRN�

([HUFLVH �

0DNH DQ+773 VHUYHU WKDW VHUYHV ILOHV� 7KH ILOH SDWK LV SURYLGHG LQ WKH 85/ OLNH WKLV� KWWS���ORFDOKRVW������SDWK�WR�P\�ILOH�W[W

([HUFLVH �

0DNH DQ +773 VHUYHU WKDW RXWSXWV SODLQ WH[W ZLWK ��� QHZ�OLQH VHSDUDWHG XQL[ WLPHVWDPSV HYHU\VHFRQG�

([HUFLVH �

0DNH DQ +773 VHUYHU WKDW VDYHV WKH UHTXHVW ERG\ LQWR D ILOH�

([HUFLVH �

0DNH D VFULSW WKDW DFFHSWV D ILOH QDPH DV ILUVW FRPPDQG OLQH DUJXPHQW DQG XSORDGV WKLV ILOH LQWR WKHVHUYHU EXLOW RQ WKH SUHYLRXV H[HUFLVH�

Page 60: Handson Nodejs

6WUHDPV1RGH KDV D XVHIXO DEVWUDFWLRQ� 6WUHDPV� 0RUH VSHFLILFDOO\� WZR YHU\ XVHIXO DEVWUDFWLRQV� 5HDG 6WUHDPVDQG :ULWH 6WUHDPV� 7KH\ DUH LPSOHPHQWHG WKURXJKRXW VHYHUDO 1RGH REMHFWV� DQG WKH\ UHSUHVHQWLQERXQG �5HDG6WUHDP� RU RXWERXQG �:ULWH6WUHDP� IORZ RI GDWD� :H KDYH DOUHDG\ FRPH DFURVV VRPHRI WKHP� EXW KHUH ZH ZLOO WU\ WR LQWURGXFH WKHP LQ D PRUH IRUPDO ZD\�

5HDG6WUHDP

$ 5HDG6WUHDP LV OLNH D IDXFHW RI GDWD� $IWHU \RX KDYH FUHDWHG RQH �DQG WKH PHWKRG RI FUHDWLQJ WKHPGHSHQGV RQ WKH W\SH RI VWUHDP�� \RX FDQ�

:DLW IRU GDWD

%\ ELQGLQJ WR WKH ٪GDWD٫ HYHQW \RX FDQ EH QRWLILHG HYHU\ WLPH WKHUH LV D FKXQN EHLQJ GHOLYHUHG E\WKDW VWUHDP� ,W FDQ EH GHOLYHUHG DV D EXIIHU RU DV D VWULQJ�

,I \RX XVH VWUHDP�VHW(QFRGLQJ�HQFRGLQJ�� WKH ٪GDWD٫ HYHQWV SDVV LQ VWULQJV� ,I \RX GRQ٧W VHW DQHQFRGLQJ� WKH ٪GDWD٫ HYHQWV SDVV LQ EXIIHUV� 6R KHUH LV DQ H[DPSOH�

� WBS SFBE4USFBN � ���

� SFBE4USFBN�PO�EBUB� GVODUJPOEBUB \

� �� EBUB JT B CVGGFS�

� ^�

� WBS SFBE4USFBN � ���

� SFBE4USFBN�TFU&ODPEJOH�VUG���

� SFBE4USFBN�PO�EBUB� GVODUJPOEBUB \

� �� EBUB JT B 65'���FODPEFE TUSJOH�

�� ^�

6R KHUH GDWD SDVVHG LQ RQ WKH ILUVW H[DPSOH LV D EXIIHU� DQG WKH RQH SDVVHG RQ WKH VHFRQG LV D VWULQJEHFDXVH ZH DUH LQIRUPLQJ WKH VWUHDP DERXW WKH HQFRGLQJ ZH DUH H[SHFWLQJ�

7KH VL]H RI HDFK FKXQN PD\ YDU\� LW PD\ GHSHQG RQ EXIIHU VL]H RU RQ WKH DPRXQW RI DYDLODEOH GDWD�

.QRZ ZKHQ LW HQGV

$ VWUHDP FDQ HQG� DQG \RX FDQ NQRZ ZKHQ WKDW KDSSHQV E\ ELQGLQJ WR WKH ٪HQG٫ HYHQW OLNH WKLV�