Explain server technologies and management services associated with hosting and managing websites LO1 1.1 Identify the purpose and types of DNS, including explanations on how domain na
Trang 1STUDENT : NGUYEN CAO DONG HUY CLASS :TT05102
STUDENTID :BD00129 SUPERVISOR :NGUYEN HOANG ANH VỤ
Trang 2
` om re C Da Nang, 2022 “BT EC
Trang 3Student name NGUYEN CAO DONG HUY — Student ID BD00129
Class IT05102 Assessor name Nguyen Hoang Anh Vu
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism I understand that making a false declaration is a form of malpractice Student’s signature:
Trang 5ACKNOWLEDGMENTS
First of all, I would like to send a special and big thank you to my family for their
encouragement, enthusiasm, and invaluable assistance Without all of this, I might not be able to
complete this task correctly
Second, I would like to thank and appreciate Mr NGUYEN HOANG ANH VU, who enthusiastically guided me to achieve the learning results as well as his support in the process of implementing this task Besides, I also received a lot of help when talking with my classmates at BTEC FPT International College Therefore, many thanks to them
Finally, I would also like to acknowledge the extremely important role played by the BTEC staff, allowed me to use the facilities and materials needed to complete the assignment
Trang 6ASSURANCE
I certify that this work is my own work, based on my personal research, and I have acknowledged all materials and sources used in preparation for it, whether they be books, essays, or articles newspapers, reports, lecture notes and any other material, electronic or personal communication I also certify that this assignment has not previously been submitted for review in any other entity, except with specific permission from all relevant unit coordinators or any other entity at any other time in this unit and J have not partially or completely copied or otherwise plagiarized the work of others
Student signature: Date:
NGUYEN CAO DONG HUY
Trang 7
TABLE OF CONTENT
INSTRUCTOR/ SUPERVISOR/ ASSESSOR nh HH ng c 1
lì À 4i S0 1 L.\0.9.1901).40.08.60.05 1 S5 1V
ni 0i 0011 V WY0.0i1060) 002 vi LIST OF TABLESNDFIGURES 0 ccccecececereeneeecececerecteeecececececececnecerecececeseecererarenenacnareceeceecerees vũ IIRS9)005i520.490)184 00177 1X I)§N.(8)8161519))00M=====“
1.1 The definition of programming models
1.1.1 Programming paradigms include
1.1.2 Characteristics of the programming models
1.1.3 What is the difference between procedural programming (POP) and object- oriented programming (OOP)
2, Analyze the common features that a developer has access to in an IDE(M2)
2.1 IDE definition
2.2 Basic features of common IDE
2.3 Benefits of IDE for programmers
II LO3 Implement basic algorithms in code using an IDE
III LO4 Determine the debugging process and explain the importance of a coding standard
3 Write a program that implements an algorithm using an IDE (P3)
4 Use the IDE to manage the development process of the program (M3):
5 Explain the debugging process and explain the debugging facilities available in the IDE(P4)
6 Evaluate how the debugging process can be used to help develop more secure, robust applications(M4)
7, Integrates many programs such as code completion, compiler, editor Outline the coding standard you have used in your code (P5)
Trang 88 Evaluate the use of an IDE for development of applications contrasted with not using an IDE(D3)
9 Critically evaluate why a coding standard is necessary in a team as well as for the individual(D4)
CRITICAL EVALUATHION Q.c Lo Q2 cnn nnn nnn nh» nnn KH KH nne nee nnne ete eenaeeees I08)i008111600)000Ẻ 13 REFERENCES 00 14
Trang 9LIST OF TABLES AND FIGURES
Table 1: Compare POP and OPP 0 ccc ccesscesecseceseesecesensecnscssceseecsseeseesseeseessssessessssseesees Table 2: Some coding sfanard 11.1 12111291219 19101 111515171 110111 181111171111 1111 181 11c r
D6000 xie ri 0xay 312) 0n
Figure 1-2: Program to calculate power of 2 nuIm€Ts ĩc nct cọc nh ngư Figure 1-2: Result Program to calculate power of 2 nuim©fs - - ác n con he Figure 1-3: Electricity Billing Prograim soci ceceeessesseeesceesesesecneesceeseeceeeeaescneeseneecieesaareaeireaneeanes Figure l-4: Result electricity Billing ProgTaim 5 2c 123211332121 153 9 1111111313515 8153 1x 1e Figure 1-5: Simple student management DTÒTAIN 52 22112333 312135121 5531121112121 2seE Figurel-6: Results simple student management prÒTa1: -.- - 5 2c S2 s2 szsxsrsrs D6002) 0n
bi x31 0100 0n
li 8i) 2v: ch
D600 810853))4ii100i00)151 0
Figure 2-1: Example about text editor in Visual studio cc ccccecceceeeeeseeeneeeeeceeseestsnaeneeeeeeeeees Figure 2-2: This is a debugger in Vistial studio icccccceeecseneeeeeeenseecreseeeeeeeesneee sree sesnenesaneesnes Figure 2-3: 20,0: A613) 10.0 A08 ốố
Figure 2-4 Several languages are supported in VIisual Studlo àccàccsenieirce li 0000i- 5,.0:i9) 0n an
Figure 3-2: Main interface of a workingØ DTOBTAIH - : c 12 1121313511 111113121215 2711111111 te Figure 3-3: Create 2 ái 0n
Figure 3-4: 0i 0
Figure sat vi 83120120 on ốeẦ
I4) ›9)9)01~i)80i9)15ã71< n4
Figure 3-7: Interface when đes1ignIng - ác 2v v22 1 19H 112 15 20101112111 5181111 11111 18x xe Figure 3-8: Code in Log1n'S DFOBTAäIM 0120211921913 1 399119111 51111 2 1158101111181 101 g1 gáy Figure 3-9: Code 1n Tĩnh'S DFÒTAIM G2 2c 131021393911 1910153112 111 101110111101 110 1110101 1211111701 0 li 6000)/11i809i x00 07 Figure 3-11: Result to calculate between 2 nuime€T§ ĩc cọc HH HH HH re Figure 4-1: Create a new proJ€c† OT ODe€' DTOJ©CÍ ĩc Tn n9 v2 101 1 1H 908 1111111111112 xe Figure 4-2: Create a Mew project ccc .ốố.ố Ả ƠL Figure 4-3: Choose proJect teInpÌa†€S ¡c2 2 n2 n1 121 1119 1111 181112111121 111111110111 111 tp
Trang 10Figure 4-4: Set the name of the new project and select a framework
Figure 4-5: Introduce workspace in Visual studio cccecceccesceseseceeseeeseeeseeenereeeeeeeconeseeeeeeeeeeanes Figure 4-6: Create new form
Figure 4-7: Main Form
Figure 4-8: Adding elements to Íorm - cà vn ST ng HH TT TH HH HH TT nh tre Figure 4-9: Elemenf DFOD€TEIS - S2 1021 111922119 111011116 21512 111111111181 111 111118111311 11t Figure 4-10: Example of IDE project
Figure 4-11: Results of the employee information management program
Figure6-1: Program has error
Figure6-2: IDE debugger find err ccc cues sssessnecssecesssneeseeessesessceesenecsecssssasceesesecseseesssnesens
Figure 7-1: Code Form
Figure 7-2: The result of the program to calculate the equation of degree 1 and 2
Figure8-1: Some IDEs
Figure 8-2: Symbolic of Coding standards
Trang 11LIST OF THE ACRONYM
Trang 128 ee $ ‘BIEC
INTRODUCTION After acquiring all the knowledge needed to write this report, I feel like I have learned a lot about the definitions of concepts and parts that I didn't know Here is a review of everything you have learned in this course
This report consists of two main parts LO1 describes the server technologies and management services needed to host and manage websites, while LO2 classifies website technologies, tools, and software used to develop websites The LO1 section provides an
overview of web technology, site mechanics, DNS, communication protocols, and more Part
P1 covers server technology and related management services into the website
Reviews are as objective as possible to make it easier for people to read and empathize with P2 is the description, purpose and meaning of server hardware, operating system and web server software From there you can see the relationship between the two Part M1: Assess the impact of popular web development technologies and frameworks on website design, functionality, and management M2 Reviews also provides evidence-based support for impacting a website's search engine performance and improving a site's index value and ranking through search engine optimization
LO2 has subsections Categorical description of website technologies, tools, and software used to develop Web sites P3 It provides the definition of frontend, backend and some tools and knowledge to build a complete website Then create a strong connection between them Compare the differences and similarities of website building tools and techniques P4 It provides user experience (UX) and user interface (UI) Review of tools and techniques that help build M3 websites Tailor selected technology tools and techniques from LO1 and LO2 to achieve a custom website as part D1 Here's what I know about web technology First, let's look at the web engine The Web contains billions of clients and servers connected by wired and wireless networks The online client sends an invitation to
the online server The online server accepts the request, locates the resource, and returns
the response to the client Relative content is sent to the client when the server responds to
the invitation
Trang 13
CHAPTER 2: DEFINITION, CHARACTERISTICS, AND RELATIONSHIPS OF PROGRA
MODELS LEARN THE STANDARDS OF CODING
1 Explain server technologies and management services associated with hosting
and managing websites (LO1)
1.1 Identify the purpose and types of DNS, including explanations on how domain names are
organized and managed(P 1)
1.1.1 Explain the concept of DNS
- DNS is from the wnting off in English of Domain Name System, is the system pamentation
name is being released Ming in the Internet 1984 for Internet, only a system for allow setting
comparison between IP address and domain name
- The Domain Name System (DNS) is a hierarchical naming system for computers,
services, and other Internet resources It connects a range of data to the domain names
granted to the participants Most significantly, it transforms human-readable domain names
into (binary) IDs that may be linked with network equipment for the purpose of identifying
and addressing devices all over the world
- The domain name system is usually explained as a "phone book" for finding information on
the Internet by converting computer hostnames into IP addresses
- For example, www.example.com translates to 208.77.188.166
Figure: 1-1: DNS 1.1.2 Purpose and type of DNS
1.1.1.2 Purpose of DNS
- When a computer connects to the Internet, it is assigned a specific IP address IP
address of each machine is unique and can help the computer to determine the route to
another computer easily As for the user, the IP address is very difficult to remember
- Therefore it is necessary to use a system to make it easy for computers to calculate routes
and also help easy for users to remember Therefore, the DNS system was born to help users switch
from hard-to-remember IP address that the computer uses into a name that is easy to remember for
the user and at the same time it making the Internet system easy to use for communication and
growing
Figure: 1-2: Purpose of DNS 1.1.2.2 Types of DNS
- DNS query is a piece of computer code that tells the DNS server what type of query
it is and what information it wishes to return Within the DNS system, there are three types
of queries:
- Recursive Query
Trang 148 ee $ ‘BTEC
+ In a recursive query, a DNS client provides a hostname, and the DNS Resolver “must” provide
an answer—it responds with either a relevant resource record, or an error message if it can't be
found The resolver starts a recursive query process, starting from the DNS RootServer, until it finds the Authoritative Name Server (for more on Authoritative Name Servers see DNS Server Types below) that holds the IP address and other information for the requested hostname
- Iterative Query
+ In an iterative query, a DNS client provides a hostname, and the DNS Resolver returns the best answer it can If the DNS resolver has the relevant DNS records in its cache,
it returns them If not, it refers the DNS client to the Root Server, or another Authoritative
Name Server which is nearest to the required DNS zone The DNS client must then repeat
the query directly against the DNS server it was referred to
- Non-Recursive Query
+ A non-recursive query is a query in which the DNS Resolver already knows the answer It either immediately returns a DNS record because it already stores it in local cache,
or queries a DNS Name Server which is authoritative for the record, meaning it definitely
holds the correct IP for that hostname In both cases, there is no need for additional rounds
of queries (like in recursive or iterative queries) Rather, a response 1s immediately returned
to the client
Figure: 1-3: Types of DNS of DNS 1.1.3 How domain names are
1.1.3.1 What is domain names
- A domain name is the name of a website operating on the internet, acting as a static,
fixed address Just like your home address or zip code helps satellite routers navigate your
goods, a browser needs a domain name to navigate to your website (web server)
Figure: 1-4: Domain names 1.1.3.2 How does domain name work
- When you enter a domain name in your web browser, it first sends a request to a global network of servers that form the Domain Name System (DNS)
- These servers then look up for the name servers associated with the domain and
forward the request to those name servers
- For example, if your website is hosted on Bluehost, then its name server information
will be like this: ns1.bluehost.com, ns2.bluehost.com
- These name servers are computers managed by your hosting company Your hosting company will forward your request to the computer where your website is stored
- This computer is called a web server It has special software installed (Apache, Nginx are two popular web server software) The web server now fetches the web page and pieces of information associated with it
- Finally, it then sends this data back to the browser
Figure: 1-5: Active Method of domain names
1.1.3.3 Different types of domain names
- Top-level Domain (TLD) is the final part of an Internet domain name; in other words,
it is the letters that follow the last dot of a domain name For example, in the domain
Trang 15case-insensitive)
- Country top-level domain (ccTLD): Used by a country that includes the country codes
of countries participating in the Internet defined by two letters according to ISO -3166 standard such
as Vietnam is VN, UK country is UK etc
- Shared top-level domain (gTLD): Theoretically, used by some type of organization (for example, com for commercial organizations) It has three or more characters Most
shared domain names can be used worldwide, but for historical reasons mil (military) and gov (government) domains are restricted to use only corresponding agency of the United
States Shared domains are broken down into sponsored top-level domains (sTLDs), like
.aero, coop, and museum,
* COM : Commercial (Commercial)
« 2- EDU : Education ( education )
¢ 3- NET : Network ( Network )
* 4- INT : International Organizations ( International Organizations )
« 5- ORG : Other organizations ( other organizations )
* 6- MIL : Military ( Military )
« 7- GOV : State ( Government )
- Infrastructure top-level domain (i1TLD): Name and top-level domain without resource support (uTLD), such as biz, info, name and pro.top-level domain arpa is the only domain this attribute type is defined .root also exists but for unknown reasons All existing TLD
books can be viewed at the Internet's highest list of domain names From here on out, Domain Names
can be used as the top level of the domain name.2.2 Domain name before here
Figure: 1-6: Domain name type 1.1.3.4 How to register a domain name
Step 1: Users visit https://domains.google
Step 2: Click Continue to continue buying and setting up a free domain name If you are not already signed in to your Google account, please log in at this step
Step 3: Proceed to buy or transfer the domain name to Google
Step 4: Domain Google will ask the user to enter the domain name information (Confirm contact information)
Step 5: If your Google Wallet account does not have a Visa/Master card, then a popup dialog will appear for you to fill in the information
Step 6: When a user buys a domain name, after successful payment, the domain
name will be available to use
1.2 Explanation of web element(P2)
1.2.1 Communication protocol
1.2.1.1 What is communication protocol
- Acommunication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity The protocol defines the rules, syntax, semantics and synchronization of communication and possible error recovery methods Protocols may be implemented by hardware, software, or a combination of both
- Communicating systems use well-defined formats for exchanging various messages Each message has an exact meaning intended to elicit a response from a range of possible
responses pre-determined for that particular situation The specified behavior is typically
independent of how it is to be implemented Communication protocols have to be agreed
upon by the parties involved To reach an agreement, a protocol may be developed into a
Trang 168 ee $ ‘BTEC
technical standard A programming language describes the same for computations, so there
is a close analogy between protocols and programming languages: protocols are to communication what programming languages are to computations An alternate formulation
states that protocols are to communication what algorithms are to computation
- Multiple protocols often describe different aspects of a single communication A group
of protocols designed to work together is known as a protocol suite; when implemented in
software they are a protocol stack
- Internet communication protocols are published by the Internet Engineering Task
Force (ETF) The IEEE (Institute of Electrical and Electronics Engineers) handles wired and
wireless networking and the International Organization for Standardization (ISO) handles
other types The ITU-T handles telecommunication protocols and formats for the public
switched telephone network (PSTN) As the PSTN and Internet converge, the standards are
also being driven towards convergence
1.2.1.2 Some typical communication protocols
- Popular protocols include: File Transfer Protocol (FTP), TCP/IP, User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), Post Office Protocol (POP3), Internet
Message Access Protocol (IMAP), Simple Mail Transfer Protocol (SMTP)
- Transfer Protocol (FTP)
+ The Transmission Control Protocol (TCP) is one of the main protocols of the Internet protocol suite It originated in the initial network implementation in which it complemented
the Internet Protocol (IP) Therefore, the entire suite is commonly referred to as TCP/IP
TCP provides reliable, ordered, and error-checked delivery of a stream of octets (bytes)
between applications running on hosts communicating via an IP network Major internet applications
such as the World Wide Web, email, remote administration, and file transfer rely
on TCP, which is part of the Transport Layer of the TCP/IP suite SSL/TLS often runs on top
of TCP
Figure: 1-7: Transfer Protocol (FTP)
- Hypertext Transfer Protocol (HTTP)
+ HTTP is from the stands for Hyper Text Transfer Protocol That is, the Hypertext
Transfer Protocol used in www HTTP is a protocol that allows searching for resources, such
as HTML doc It is the basis of any data exchange on the Web and also the protocol between the client (usually browsers or any kind of device or program) and the server (usually computers in the cloud) )
A complete doc is reconstructed from the various child docs that are fetched, such as text, layout
description, images, videos, scripts, etc
The default HTTP port is: 80
Figure: 1-8: Hypertext Transfer Protocol (HTTP)
- File Transfer Protocol (FTP)
+ The File Transfer Protocol (FTP) is a standard communication protocol used for the
transfer of computer files from a server to a client on a computer network
remote command execution, but any network service can be secured with SSH
The default SSH port is 22
Trang 17- Telnet (Terminal Network)
+ Telnet is an application protocol used on the Internet or local area network to provide
a bidirectional interactive text-oriented communication facility using a virtual terminal connection User data is interspersed in-band with Telnet control information in an 8-bit byte
oriented data connection over the Transmission Control Protocol (TCP)
Telnet's default port is 23
- Simple Mail Transfer Protocol (SMTP)
+ The Simple Mail Transfer Protocol (SMTP) is an internet standard communication
protocol for electronic mail transmission Mail servers and other message transfer agents
use SMTP to send and receive mail messages User-level email clients typically use SMTP
only for sending messages to a mail server for relaying, and typically submit outgoing email
to the mail server on port 587 or 465 per RFC 8314 For retrieving messages, IMAP (which
replaced the older POP3) is standard, but proprietary servers also often implement proprietary protocols, e.g., Exchange ActiveSync
Figure: 1-10: Simple Mail Transfer Protocol (SMTP)
- Domain name System (DNS) :is a the system for allow the set match between IP
address and namespace on Internet
The default DNS gateway is 53
- Post Office Protocol version 3 (POP3)
+ Post Office Protocol version 3 (POP3) is a standard mail protocol used to receive
emails from a remote server to a local email client
POP3 allows you to download email messages on your local computer and read them
even when you are offline
- Internet Message Access Protocol (IMAP): is an Internet standard protocol used
by email clients to retrieve email messages from a mail server over a TCP/IP connection IMAP is defined by RFC 3501
- Simple Network Management Protocol (SNMP)
+ Simple Network Management Protocol (SNMP) is an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behavior Devices that typically support SNMP include cable modems,
routers, switches, servers, workstations, printers, and more
The SNMP default port is 161/162
- Hypertext Transfer Protocol over SSL / TLS (HTTPS):
+ The Secure Hypertext Transfer Protocol (HTTPS) is an extension of the Hypertext
Transfer Protocol (HTTP) It is used to communicate the entire computer network and is
widely used on the Internet In HTTPS, the communication protocol is encrypted using
Transport Layer Security (TLS) or formerly Secure Sockets Layer (SSL) Do that, this protocol is get as
Trang 18An individual system can provide resources and use them from another system at the
same time This means that a device could be both a server and a client at the same time
Some of the first servers were mainframe computers or minicomputers Minicomputers were much smaller than mainframe computers, hence the name However, as technology progressed, they ended
up becoming much larger than desktop computers, which made
the term microcomputer somewhat farcical
- Initially, such servers were connected to clients known as terminals that did not do any actual computing These terminals, referred to as dumb terminals, existed simply to
accept input via a keyboard or card reader and to return the results of any computations to
a display screen or printer The actual computing was done on the server4
- Later, servers were often single, powerful computers connected over a network to a set of less-powerful client computers This network architecture is often referred to as the
client-server model, in which both the client computer and the server possess computing
power, but certain tasks are delegated to servers In previous computing models, such as
the mainframe-terminal model, the mainframe did act as a server even though it wasn’t referred to
by that name
1.2.2.2 Components of the server system
Server board:
Server motherboards for demanding applications come
in form factors: EEB/E ATX/ATX/microATX/mini-ITX A single socket or dual socket motherboard is available for AMD EPYC 7002 and 7001, and Intel Xeon Scalable processors
Figure: 1-12: Server board
Figure: 1-13: CPU
- Memory (RAM):
+ RAM (Random Access Memory) is a type of variable memory that allows random reading and writing of data to any location in memory based on the memory's address All information stored in RAM is temporary and will be lost when there is no power supply
RAM is made up of many small components including resistors, capacitors, transistors we have the task of providing a stable source for RAM
Figure: 1-14: RAM
- Disk drive (HDD):
+ HDD, also known as hard drive (Hard Disk Drive, abbreviated: HDD) is a device used
to store data on circular disk surfaces surrounding magnetic material Hard drives are "nonvolatile"
Trang 19(non-volatile) type memory, which means they don't lose data when power is
stopped to them
Figure: 1-15: HDD
- Raid controller board (Raid controller):
+ ARAID controller is a hardware device or software program used to manage hard disk drives (HDDs) or solid-state drives (SSDs) in a computer or storage array so they work
as a logical unit A RAID controller provides a degree of protection for stored data and may also help to improve computing performance by accelerating access to stored data
Figure: 1-16: Raid controller
- Power supply unit (PSU):
+ A Power Supply Unit (PSU) is an internal IT hardware component Despite the name, Power Supply Units (PSU) do not supply systems with power - instead they convert it Specifically, a power supply converts the alternating high voltage current (AC) into direct current
(DC), and they also regulate the DC output voltage to the fine tolerances required for modern
computing components
Figure: 1-17: PSU 1.2.2.3 Types of servers
- Tower Server:
+ They work just like a personal computer as a vertical server, nearly like a PC case With a small footprint that can be enlarged by upgrading RAM, CPU, storage, and so on, it's ideal for a fast expanding fir
Figure: 1-18: Tower Server
- Rack - mount Server (Server rack):
+ Arack server, also known as a rack mount server, rack mount server, rack server or
rack server is a specially designed form of server that 1s mounted in a server rack Rack
server lines are commonly used in data centers and small rooms with dedicated server room designs
+ Unlike line computers or other line servers, rack servers are basically wider in size + Therefore, it can be fixed to racks using dedicated rails and roads, attributes of that server's
design If you only as you need to use some small host, the server rack is a good select to
the surface economically with a relatively affordable investment cost
Figure: 1-19: Server rack
- Blade Server:
+ A blade server is a stripped-down server computer with a modular design optimized
to minimize the use of physical space and energy Blade servers have many components
removed to save space, minimize power consumption and other considerations, while still having all the functional components to be considered a computer
Figure: 1-20: Blade Server
1.2.3 Server software
Trang 201.2.3.1 Operating Systems
- An operating system (OS) 1s system software that manages computer hardware, software resources, and provides common services for computer programs
- Time-sharing operating systems schedule tasks for efficient use of the system and
may also include accounting software for cost allocation of processor time, mass storage,
printing, and other resources
Figure:2-1: Operating Systems
- Windows Server:
+ Windows Server is a brand name for a group of server operating systems released
by Microsoft since 2003 The first Windows server edition to be released under that brand
was Windows Server 2003 However, the first server edition of Windows was Windows NT
3.1 Advanced Server, followed by Windows NT 3.5 Server, Windows NT 3.51 Server, Windows NT 4.0 Server, and Windows 2000 Server Windows 2000 Server was the first server
edition to include Active Directory, DNS Server, DHCP Server, Group Policy, as well as
many other popular features used today
Figure:2-2: Windows Server
Linux:
* Linux isa family of open-source Unix-like operating
systems based on the Linux ker
nel, an operating system kernel first released on September 17, 1991, by Linus Torvalds
+ Linux is typically packaged in a Linux distribution
"BlueBox" environment (which allows a Mac OS 8.5 session to be launched as a separate process to run legacy Mac OS software)
Figure 2-3: Mac OS X Server 1.2.3.2 Web server
Trang 21Table: 1 Web server software
Lite Speed Lite Speed 4.29%,
Web Server Technologies “đa
Google Google 0.9%
Server
+ Apache HTTP Server
- The Apache HTTP Server, colloquially called Apache (/ speet if -PATCH-ee), is a
free and open-source cross-platform web server software, released under the terms of
Apache License 2.0 Apache is developed and maintained by an open community of developers under the auspices of the Apache Software Foun
Figure 2-5: Apache HTTP Server
+ Nginx
- Nginx (pronounced "engine X",/ nde n 3ks/€2N-jin-EKS), stylized as NGINX, nginx
or NginX, is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache The software was created by Igor Sysoev and publicly released in 2004 Nginx is free and open- source software, released under the terms of the 2-clause BSD license A large fraction of web servers use NGINX,often as a load balancer
Figure 2-6: Nginx + HS
- IIS is an acronym for Internet Information Services This concept refers to the software that 1s attached to the Window version We are in the business of providing services
to servers running on Windows To del the Internet information up to network Various services like
Web Server, FTP Server
Figure 2-7: IIS + LiteSpeed Web Server
- LiteSpeed Web Server (LSWS), is a proprietary web server software It 1s the 4th
most popular web server, estimated to be used by 10% of websites as of July 2021.LSWS
is developed by privately held LiteSpeed Technologies The software uses the same
configuration format as Apache HTTP Server and is compatible with most Apache features.An open source variant is also available
Figure 2-8: LiteSpeed Web Server + Google Server
- Google data centers are the large data center facilities Google uses to provide their
services, which combine large drives, computer nodes organized in aisles of racks, internal
Trang 22and external networking, environmental controls (mainly cooling and humidification control), and operations software (especially as concerns load balancing and fault tolerance)
Figure 2-9: Google Server 1.2.4 Host Operating System
1.2.4.1 What is host operating system
- Operating system (English: Operating System - OS) is the software that manages
computer software, software and provides general services for the program's computers
- For functional hardware such as input, output, and memory allocation, the system plays an important role between the program and the computer's hardware, although application code is often executed directly by the hard and often frequently implement command
systems into functional operating systems or as discontinuous working systems Operating
systems are found on many computing devices - from mobile phones and video game consoles to web servers and supercomputers, providing an environment that allows users to
develop and implement show off their applications easily
- The time-sharing operating system sets up schedules for tasks to use the system
efficiently and can also include accounting software to allocate costs for processing time,
mass storage , printing and other resources
- The most popular desktop operating system 1s the Microsoft Windows operating system with
a market share of 76.45% macOS by Apple Inc In the mobile sector (including
smartphones and tablets), Android's market share is up to 72% in 2020 According to data
for the third quarter of 2016, Android's market share on smartphones Smartphones are dominating with 87.5% with a growth rate of 10.3% per year, followed by Apple's 10S with 12.1%
with a decrease in market share of 5.2% per year, while other operating systems another
only 0.3%, Linux distributions are used primarily in the areas of servers and supercomputers Class operator specialists are also created to cater for applications such as embedded systems and real-time execution
1.2.4.2 Main functions of the OS
- An operating system has three main functions: manage the computer's resources,
such as the central processing unit, memory, disk drives, and printers, establish a user
interface, and execute and provide services for applications software
1.2.4.3 The tasks of the OS
- Control hardware and organize the execution of computer programs Provides an
interface for users, an interface is a communication environment that allows users to exchange during work Organize and manage information in the computer
- Furthermore, in some situations, operating systems provide fundamental functions for typical application software such as Web browsers, word processors, and so on
1.2.4.4 Relationship
- Relationship between communication protocols, server hardware, operating systems, and web server software in terms of website design and access:To begin, a communication protocol is a set of rules that allows two or more entities in a communication system to send information through any variation in physical quantity, and it reflects an agreement between communicating devices
- Similarly, without a protocol, only two devices are connected but cannot communicate A protocol defines the format of packets and thus the rules for communicating them across the network - Different protocols also provide different levels of service, such as simple error
correction, multimedia data retrieval, and so on Furthermore, there are four components of data
Trang 23protocol, as well as numerous aspects of a transfer that a convention can define
CHAPTER 3 IDE PROBLEMS, DEBUGGING PROCEDURES, AND
CODING STANDARDS
II LO3 Implement basic algorithms in code using an IDE
I LO4 Determine the debugging process and explain the importance of a coding standard
3, Write a program that implements an algorithm using an IDE (P3)
O Create an event-driven program that generates a Windows Form to calculate between 2 numbers First, let's look at the properties of the components used to create the program:
| Enter your information: username and password
O The information area uses three "buttons" The first button named "Login" is used to log in to the system The second button is called "Cancel" and has the ability to correct the information if it is incorrect "Exit" has the ability to exit the program when you no longer need to work
Trang 240) In the search area, I use a "button" called "search" which has the ability to calculate (| And when finished entering 2 numbers, press search to calculate and finally I use output to output the result
O Here are the steps I took to create the employee information table from Visual Studio software
LI Step 1: Create a new Project
Trang 25Figure 3-1: Create new project
O Step 2: When entering the previously created project, we will create window forms in that project I will show you the steps to do it with pictures as follows
First we right click on Text2
Figure 3-2: Main interface of a working program After right clicking on Text 2, it will appear on the table, click Add and then we select
Form(windows form)
Trang 26After selecting the Form (window form) it will appear a table for us to name the project
O Step 3: Enter a name for the project Here I will default to the initial name is: Form1.cs and
click Add
Figure 3-3: Create new form
Trang 27O Step 4: In the Properties section of the Form you can change the Text as you like, this is the title of the software Will appear in the upper left corner of the form Here I will leave
the default as Form1
Figure 3-4: Main Form
oO Step 5: You add the necessary components to the Form, here I will add Label, TextBox, and
Button (These components are in the ToolBox section)
Figure 3-5: Adding elements to for
Trang 280 Step 6: To edit you can edit in the Properties of the components
Figure 3-6: Element properties
After preparing the interface we will get like this
Figure 3-7: Interface when designing
it
ao Step 7: After preparing the interface, I start to code by double clicking on the " we created at the beginning
Trang 29Figure 3-8: Code in Login's program
oO Step 8: After coding the login form, you continue to create a form to calculate the same as the first steps After creating and editing the properties in the form, we have a picture similar to
the one below
Trang 30o Step 9: We continue to code to use the properties in the form:
Figure 3-9: Code in Tinh's program
O Step 10: After coding all the form classes, we go back to the main program and write the statement
to run the program
Trang 31Figure 3-10: Main program
Trang 32Figure 3-11: Result to calculate between 2 numbers
4 Use the IDE to manage the development process of the program (M3):
To use a good IDE for your application development needs, you need to choose an IDE language that fits your needs In this section, we will write a program using a language called C#, which is considered a programming language I use Visual Studio software to create and manage
them
Trang 33XO) Step 1: We need to install the latest version of visual studio software to be able to use it easily This can be considered an IDE used to develop a program or an application This is quite a famous application among programmers After the installation is complete I open visual studio it will appear as shown below
Figure 4-1: Create a new project or open project
This interface presents two main parts:
O The left side of the interface shows all the projects you've worked on
LI The right side of the interface has the ability to open files in other folders and create new files
O Open Project or Solution: Used to open a project in the default location previously installed by Visual Studio
| Open Local Folder: Used to open a previously created project saved in a specific folder
1 Create New Project: Used to create a new project
O Step 2: We will create a project using the "create a new project" function
Trang 34Figure 4-2: Create a new project
O Click Create a new project to bring up an interface with recently worked projects on the left side of the interface
O The central portion of the interface displays a table containing items such as languages, programmable operating systems, and programming areas such as consoles, games,
services, web, mobile, and office
O In this part, we choose C# as the main language for creating projects in Windows operating system
Console interface: