results matching ""
No results matching ""
- 8.2.Glossary
- ¶ 8.2.1. X-Server
- ¶ 8.2.2. TuringLanguage
- ¶ 8.2.3. V8
- ¶ 8.2.4. Backend
- ¶ 8.2.5. _id
- ¶ 8.2.6. API
- ¶ 8.2.7. Agent
- ¶ 8.2.8. Authorization
- ¶ 8.2.9. Back-end
- ¶ 8.2.10. BaaS
- ¶ 8.2.11. CAP Theorem
- ¶ 8.2.12. Cardinality
- ¶ 8.2.13. Checksum
- ¶ 8.2.14. CRUD
- ¶ 8.2.15. Component
- ¶ 8.2.16. CSV
- ¶ 8.2.17. Cursor
- ¶ 8.2.18. Client-side
- ¶ 8.2.19. CDN
- ¶ 8.2.20. Cloud
- ¶ 8.2.21. CMS
- ¶ 8.2.22. CI
- ¶ 8.2.23. Client
- ¶ 8.2.24. Collection
- ¶ 8.2.25. Concurrency Control
- ¶ 8.2.26. Commit
- ¶ 8.2.27. CSS
- ¶ 8.2.28. Data-center awareness
- ¶ 8.2.29. Database
- ¶ 8.2.30. Deployment
- ¶ 8.2.31. Election
- ¶ 8.2.32. Eventual consistency
- ¶ 8.2.33. Expression
- ¶ 8.2.34. Environment
- ¶ 8.2.35. Failover
- ¶ 8.2.36. Field
- ¶ 8.2.37. Field path
- ¶ 8.2.38. Firewall
- ¶ 8.2.39. Front-end
- ¶ 8.2.40. Frontend
- ¶ 8.2.41. Git
- ¶ 8.2.42. Geohash
- ¶ 8.2.43. GeoJSON
- ¶ 8.2.44. Hub
- ¶ 8.2.45. HTML
- ¶ 8.2.46. Hashed shard key
- ¶ 8.2.47. Haystack index
- ¶ 8.2.48. Hidden member
- ¶ 8.2.49. IaaS
- ¶ 8.2.50. Idempotent
- ¶ 8.2.51. Index
- ¶ 8.2.52. Initial sync
- ¶ 8.2.53. IPv6
- ¶ 8.2.54. JSON
- ¶ 8.2.55. JSON document
- ¶ 8.2.56. JSONP
- ¶ 8.2.57. JavaScript
- ¶ 8.2.58. Journal
- ¶ 8.2.59. Least privilege
- ¶ 8.2.60. LVM
- ¶ 8.2.61. Map-reduce
- ¶ 8.2.62. Mapping type
- ¶ 8.2.63. MIME
- ¶ 8.2.64. MD5
- ¶ 8.2.65. MarkDown
- ¶ 8.2.66. Module
- ¶ 8.2.67. Node.js
- ¶ 8.2.68. npm
- ¶ 8.2.69. Namespace
- ¶ 8.2.70. Natural order
- ¶ 8.2.71. Network partition
- ¶ 8.2.72. Overloaded
- ¶ 8.2.73. Operator
- ¶ 8.2.74. Ordered query plan
- ¶ 8.2.75. PID
- ¶ 8.2.76. Pipe
- ¶ 8.2.77. Primary
- ¶ 8.2.78. Primary key
- ¶ 8.2.79. Primary shard
- ¶ 8.2.80. Priority
- ¶ 8.2.81. Privilege
- ¶ 8.2.82. Pipeline
- ¶ 8.2.83. Pre-splitting
- ¶ 8.2.84. PaaS
- ¶ 8.2.85. Query
- ¶ 8.2.86. Query optimizer
- ¶ 8.2.87. RDBMS
- ¶ 8.2.88. Read concern
- ¶ 8.2.89. RSA keys
- ¶ 8.2.90. Read lock
- ¶ 8.2.91. Read preference
- ¶ 8.2.92. Record size
- ¶ 8.2.93. Resource
- ¶ 8.2.94. Role
- ¶ 8.2.95. Rollback
- ¶ 8.2.96. Runtime Error
- ¶ 8.2.97. Server-end
- ¶ 8.2.98. Server-side
- ¶ 8.2.99. Service
- ¶ 8.2.100. Story
- ¶ 8.2.101. Story Shell
- ¶ 8.2.102. Server
- ¶ 8.2.103. SSR
- ¶ 8.2.104. Security
- ¶ 8.2.105. SSH
- ¶ 8.2.106. sudo
- ¶ 8.2.107. SaaS
- ¶ 8.2.108. Syntax
- ¶ 8.2.109. Secondary
- ¶ 8.2.110. Secondary index
- ¶ 8.2.111. SQL
- ¶ 8.2.112. SSD
- ¶ 8.2.113. Tag set
- ¶ 8.2.114. TSV
- ¶ 8.2.115. TTL
- ¶ 8.2.116. TS
- ¶ 8.2.117. UI
- ¶ 8.2.118. UGC
- ¶ 8.2.119. Unique index
- ¶ 8.2.120. Unix epoch
- ¶ 8.2.121. Unordered query plan
- ¶ 8.2.122. Virtual memory
- ¶ 8.2.123. Write lock
- ¶ 8.2.124. WriteBacks
- ¶ 8.2.125. W3C
- ¶ 8.2.126. Web 1.0
- ¶ 8.2.127. Web 2.0
- ¶ 8.2.128. Web 3.0
- ¶ 8.2.129. Webview
- ¶ 8.2.130. YAML
8.2.Glossary
The purpose of this chapter is to provide short definitions for a collection of technical terminologies and concepts used in this book. This chapter contains a listing of some commonly confusing words, along with any helpful references for understanding what something is.
¶ 8.2.1. X-Server
X-Server's the leading backend platform company that enables people around the world to build applications for every user, industry and purpose. It's mission is to accelerate the development of apps, webs, and games. We invented new technologies and patents to help make this future a reality. X-Server's developed in C++ programming language.
¶ 8.2.2. TuringLanguage
TuringLanguage is the first programming language built into the X-Server. Of course, X-Server also supports JavaScript. TuringLanguage will automatically compile to the X-Server to increase speed and security. TuringLanguage is very strange, it can be written on the front end, and debugged in the browser, but run on the server side(X-Server). TuringLanguage can avoid being tampered from the frontend like JavaScript, and can be compiled into a binary run to increase speed.
¶ 8.2.3. V8
V8 is Google’s open source JavaScript engine. It is written in C++ and is used in Google Chrome. V8 can run standalone, or can be embedded into any C++ application.
X-Server builds V8 as part of Chromium and then points Node to that V8 when building it.
V8’s version numbers always correspond to those of Google Chrome. Chrome 59 includes V8 5.9, Chrome 58 includes V8 5.8, etc.
¶ 8.2.4. Backend
Back end, back-end or backend. The user experience of software is the “front end". And the code and data that actually do all the work are the “back end". The front is an abstraction, simplifying the underlying component by providing a user-friendly interface, while the back usually handles business logic and data storage.
¶ 8.2.5. _id
A field required in every document. The _id field must have a unique value. You can think of the _id field as the document’s primary key. If you create a new document without an _id field, X-Server automatically creates the field and assigns a unique JSON ObjectId.
¶ 8.2.6. API
API is a fun, ambiguous term. It stands for 'Application Programming Interface'. It's a fancy phrase for talking about some agreed-upon way for two programs to talk to each other. It can refer to the specification, as well as the implementation. In recent years, people have often meant 'HTTP API' (or API that uses http as the channel of communication) when talking about APIs. When someone says 'Twitter has an API', they mean Twitter has an HTTP API, which boils down to a special webpage that works as a function. For example, it could be something like twitter.com/api/tweets, which would then respond with a list of all tweets in json format. APIs each have different ways of handling authentication.
¶ 8.2.7. Agent
A component whose life cycle is not tied to any story, is a singleton in user scope, and provides services to other components. An agent can be invoked by other components or by the system in response to triggers like push notifications. An agent can provide services to components, send and receive messages, and make proposals to give suggestions to the user.
¶ 8.2.8. Authorization
Provisioning of access to databases and operations.
¶ 8.2.9. Back-end
Back-end is an overloaded term. Same to Backend. Refer to the Backend.
¶ 8.2.10. BaaS
Baas is Backend as a service. An example of a backend as a service provider is EasyDataManager (EDM). Baas’s offerings are basically plug and play services using APIs to a web or mobile developer’s application. EDM offers Email Services, and traditional mobile services such as User Managerment, and Reporting. Baas allows developers to solely focus on their front-end and user experience. It is made for start-ups to get an app up and running in no time.
¶ 8.2.11. CAP Theorem
Given three properties of computing systems, consistency, availability, and partition tolerance, a distributed computing system can provide any two of these features, but never all three.
¶ 8.2.12. Cardinality
The measure of the number of elements within a set of values. For example, the set A = { 2, 4, 6 } contains 3 elements, and has a cardinality of 3.
¶ 8.2.13. Checksum
A calculated value used to ensure data integrity. The MD5 algorithm is sometimes used as a checksum.
¶ 8.2.14. CRUD
An acronym for the fundamental operations of a database: Create, Read, Update, and Delete. In computer programming, CRUD are the four basic functions of persistent storage. Alternate words are sometimes used when defining the four basic functions of CRUD, such as retrieve instead of read, modify instead of update, or destroy instead of delete. CRUD is also sometimes used to describe user interface conventions that facilitate viewing, searching, and changing information; often using computer-based forms and reports.
¶ 8.2.15. Component
A component is a unit of execution and accounting. It consists of a manifest file and associated code.
¶ 8.2.16. CSV
A text-based data format consisting of comma-separated values. This format is commonly used to exchange data between relational databases since the format is well-suited to tabular data.
¶ 8.2.17. Cursor
A pointer to the result set of a query. Clients can iterate through a cursor to retrieve results. By default, cursors timeout after 10 minutes of inactivity.
¶ 8.2.18. Client-side
Client-side is an overloaded term. Same to Front-end. Refer to the Backend.
¶ 8.2.19. CDN
A content delivery network (CDN) refers to a geographically distributed group of servers which work together to provide fast delivery of Internet content. A CDN allows for the quick transfer of assets needed for loading Internet content including HTML pages, javascript files, stylesheets, images, and videos. The popularity of CDN services continues to grow, and today the majority of web traffic is served through CDNs, including traffic from major sites like Facebook, Netflix, and Amazon.
¶ 8.2.20. Cloud
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.
¶ 8.2.21. CMS
A Content Management System (CMS) is web-based software (or website) that allows users to interact with a website for a specific purpose.
¶ 8.2.22. CI
CI stands for Continuous Integration. It's a practice where you automate the steps of building your code into its executable form, automate its testing, and/or automate its deployment. Special CI sofware is usually used, which detects when you commit changes to your code
¶ 8.2.23. Client
The browser that will run the WebApp. The application layer that uses a database for data persistence and storage. Drivers provide the interface level between the application layer and the database server. Client can also refer to a single thread or process.
¶ 8.2.24. Collection
A grouping of documents. A collection is the equivalent of an RDBMS table. A collection exists within a single database. Collections do not enforce a schema. Documents within a collection can have different fields. Typically, all documents in a collection have a similar or related purpose. See Namespace.
¶ 8.2.25. Concurrency Control
Concurrency control ensures that database operations can be executed concurrently without compromising correctness. Pessimistic concurrency control, such as used in systems with locks, will block any potentially conflicting operations even if they may not turn out to actually conflict.
¶ 8.2.26. Commit
'Committing' your code is something done when you are using git as your Source Code Manager. It's like hitting 'freeze' on your code, and making a backup, with a message to help you remember what you did.This way, you can document every change you make to your code, roll it back as necessary, or merge a bunch of changes you and others have made in parallel. A single 'commit' is the frozen version of your code.
¶ 8.2.27. CSS
Cascading Style Sheets (CSS) is a simple mechanism for adding style (e.g., fonts, colors, spacing) to Web documents. These pages contain information on how to learn and use CSS and on available software. They also contain news from the CSS working group.
¶ 8.2.28. Data-center awareness
A property that allows clients to address members in a system based on their locations. Replica sets implement data-center awareness using tagging.
¶ 8.2.29. Database
A physical container for collections. Each database gets its own set of files on the file system.
¶ 8.2.30. Deployment
Deployment is the process of taking the code that you've written, and telling it to run wherever it will be run. If you're making a standalone app, that might be posting it to the appstore. If you're building a web application, that might mean putting your code on a server and telling it to start. Every project has a different set of steps to deploy, and you're the one deciding what those will be. Check out CI for more info on some ways of deploying your code.
¶ 8.2.31. Election
The process by which members of a replica set select a primary on startup and in the event of a failure.
¶ 8.2.32. Eventual consistency
A property of a distributed system that allows changes to the system to propagate gradually. In a database system, this means that readable members are not required to reflect the latest writes at all times.
¶ 8.2.33. Expression
In the context of aggregation framework, expressions are the stateless transformations that operate on the data that passes through a pipeline.
¶ 8.2.34. Environment
In computer program and software product development, the development environment is the set of processes and programming tools used to create the program or software product. The term may sometimes also imply the physical environment.
¶ 8.2.35. Failover
The process that allows a secondary member of a replica set to become primary in the event of a failure.
¶ 8.2.36. Field
A name-value pair in a document. A document has zero or more fields. Fields are analogous to columns in relational databases.
¶ 8.2.37. Field path
Path to a field in the document. To specify a field path, use a string that prefixes the field name with a dollar sign ($).
¶ 8.2.38. Firewall
A system level networking filter that restricts access based on, among other things, IP address. Firewalls form a part of an effective network security strategy.
¶ 8.2.39. Front-end
Front-end is an overloaded term. Same to Frontend. Refer to the Backend.
¶ 8.2.40. Frontend
Frontend is an overloaded term. Same to Front-end. Refer to the Backend.
¶ 8.2.41. Git
Git is a piece of software called a Source Control Manager, that helps you keep track of changes you make to your code, and keep it all in one place. You can create what's called a 'git repository', which is just a folder where all your code resides. You can then tell git to freeze all the code in that folder, remember it exactly as it is, and push that frozen state to a central repository (like on github or gitlab), while you keep working on it. Others can collaborate on your project by pulling those frozen states (commits), making their own changes, and sending them back to the central repository.
¶ 8.2.42. Geohash
A geohash value is a binary representation of the location on a coordinate grid.
¶ 8.2.43. GeoJSON
A geospatial data interchange format based on JavaScript Object Notation (JSON). GeoJSON is used in geospatial queries.
¶ 8.2.44. Hub
The hub is a portal for introspection. It enables tools to access detailed structural information about realms and component instances at runtime, such as their names, job and process ids, and published services.
¶ 8.2.45. HTML
HyperText Markup Language (HTML) is a tag system that internet browsers use to layout webpages. It's a way of placing and describing content on a webpage. (Almost) Every link, image, and piece of text you see on the web is written in html. Even this page is (after it's converted from markdown). You can see the html source of a page (or a piece of a page) simply by right-clicking the page and hitting 'inspect element', which will bring up the developer console for your web browser, letting you see the html that makes up your page. Of the three browser languages (HTML, CSS, and JavaScript), HTML is the one that embodies MEANING, describing and placing content on the page. CSS deals with positioning and appearance, while Javascript deals with reacting to user inputs and doing things that HTML and CSS cannot.
¶ 8.2.46. Hashed shard key
A special type of shard key that uses a hash of the value in the shard key field to distribute documents among members of the sharded cluster. See Hashed Indexes.
¶ 8.2.47. Haystack index
A geospatial index that enhances searches by creating “buckets” of objects grouped by a second criterion.
¶ 8.2.48. Hidden member
A replica set member that cannot become primary and are invisible to client applications.
¶ 8.2.49. IaaS
Iaas is the simplest cloud offering. It is the most close to the “metal” out of the terms. Iaas stands for Infrastructure as a service. Iaas sells products analogous to hardware like VMs, storage and data management servers. The most famous Amazon Web Service (AWS) offering in Iaas is EC2 (Elastic computing 2), S3 (Simple Storage Service), and RDS (Relational Database Service). Each of these products are charged by the hour.
¶ 8.2.50. Idempotent
The quality of an operation to produce the same result given the same input, whether run once or run multiple times.
¶ 8.2.51. Index
A data structure that optimizes queries.
¶ 8.2.52. Initial sync
The replica set operation that replicates data from an existing replica set member to a new replica set member.
¶ 8.2.53. IPv6
A revision to the IP (Internet Protocol) standard that provides a significantly larger address space to more effectively support the number of hosts on the contemporary Internet.
¶ 8.2.54. JSON
JSON stands for JavaScript Object Notation. A human-readable, plain text format for expressing structured data with support in many programming languages. It's a standard way of encoding objects as strings. It can be, and often is, used across many languages. Objects can have properties, are represented as keys, which are always strings, and values, which can be strings, numbers, arrays, or objects.
¶ 8.2.55. JSON document
A JSON document is a collection of fields and values in a structured format. For sample JSON documents, see http://json.org/example.html.
¶ 8.2.56. JSONP
JSON with Padding. Refers to a method of injecting JSON into applications. Presents potential security concerns.
¶ 8.2.57. JavaScript
A popular scripting language originally designed for web browsers. Certain server-side functions use a JavaScript interpreter.
¶ 8.2.58. Journal
A sequential, binary transaction log used to bring the database into a valid state in the event of a hard shutdown. Journaling writes data first to the journal and then to the core data files.
¶ 8.2.59. Least privilege
An authorization policy that gives a user only the amount of access that is essential to that user’s work and no more.
¶ 8.2.60. LVM
Logical volume manager. LVM is a program that abstracts disk images from physical devices and provides a number of raw disk manipulation and snapshot capabilities useful for system management.
¶ 8.2.61. Map-reduce
A data processing and aggregation paradigm consisting of a “map” phase that selects data and a “reduce” phase that transforms the data.
¶ 8.2.62. Mapping type
A Structure in programming languages that associate keys with values, where keys may nest other pairs of keys and values (e.g. dictionaries, hashes, maps, and associative arrays). The properties of these structures depend on the language specification and implementation. Generally the order of keys in mapping types is arbitrary and not guaranteed.
¶ 8.2.63. MIME
Multipurpose Internet Mail Extensions. A standard set of type and encoding definitions used to declare the encoding and type of data in multiple data storage, transmission, and email contexts.
¶ 8.2.64. MD5
A hashing algorithm used to efficiently provide reproducible unique strings to identify and checksum data.
¶ 8.2.65. MarkDown
MarkDown is a simple markup syntax that allows very fast document composition with little effort, and leaves the files fairly readable. It is very simple to learn, and can be illustrated very quickly in a few short examples. It focuses on headers, tables, links, images, emphasis, and division of pages. It's often interspersed with HTML. MarkDown (abbreviated 'md') is a simple markup syntax that allows very fast document composition with little effort, and leaves the files fairly readable. It is very simple to learn, and can be illustrated very quickly in a few short examples. It focuses on headers, tables, links, images, emphasis, and quotes. It's often interspersed with HTML.
¶ 8.2.66. Module
A component with a module
metadata file which primarily describes the Module's data compatibility and semantic role. Modules show UI and participate in Stories at runtime.
¶ 8.2.67. Node.js
Node.js® is a runtime for JavaScript built on Chrome's V8 JavaScript engine. It's a program that will run Javascript code in the console for you, as opposed to in a web browser. It has gained a good deal of popularity because it allows people to write web servers in the same language that they wrote their front-end (browser) code in. It comes bundled with npm, and has also gained a lot of popularity because of the many, many packages available.
¶ 8.2.68. npm
npm is the Node.js package manager. It allows you to easily add external modules to a nodejs project. It also is frequently used to install simple applications, since it is cross-platform and works very well with git repositories. It's installed whenever you install node. You can browse all of the available packages here, and see an example of usage below.
¶ 8.2.69. Namespace
A namespace is the combination or composite hierarchy of files, database, index, directories, sockets, services, and other named objects which are offered to components by their environment.
¶ 8.2.70. Natural order
The order in which the database refers to documents on disk.
¶ 8.2.71. Network partition
A network failure that separates a distributed system into partitions such that nodes in one partition cannot communicate with the nodes in the other partition. Sometimes, partitions are partial or asymmetric. An example of a partial partition would be a division of the nodes of a network into three sets, where members of the first set cannot communicate with members of the second set, and vice versa, but all nodes can communicate with members of the third set. In an asymmetric partition, communication may be possible only when it originates with certain nodes. For example, nodes on one side of the partition can communicate to the other side only if they originate the communications channel.
¶ 8.2.72. Overloaded
Overloaded is a computer term. It is the "synonym" in the old saying.
¶ 8.2.73. Operator
A keyword beginning with a $ used to express an update, complex query, or data transformation. For example, $gt is the query language’s “greater than” operator.
¶ 8.2.74. Ordered query plan
A query plan that returns results in the order consistent with the sort() order.
¶ 8.2.75. PID
A process identifier. UNIX-like systems assign a unique-integer PID to each running process. You can use a PID to inspect a running process and send signals to it.
¶ 8.2.76. Pipe
A communication channel in UNIX-like systems allowing independent processes to send and receive data. In the UNIX shell, piped operations allow users to direct the output of one command into the input of another.
¶ 8.2.77. Primary
In a replica set, the primary is the member that receives all write operations.
¶ 8.2.78. Primary key
A record’s unique immutable identifier. In an RDBMS, the primary key is typically an integer stored in each row’s id field.
¶ 8.2.79. Primary shard
The shard that holds all the un-sharded collections. See Primary Shard.
¶ 8.2.80. Priority
A configurable value that helps determine which members in a replica set are most likely to become primary.
¶ 8.2.81. Privilege
A combination of specified resource and actions permitted on the resource.
¶ 8.2.82. Pipeline
A series of operations in an aggregation process.
¶ 8.2.83. Pre-splitting
An operation performed before inserting data that divides the range of possible shard key values into chunks to facilitate easy insertion and high write throughput.
¶ 8.2.84. PaaS
Paas stands for Platform as a service. An AWS Paas service is Elastic Beanstalk. Paas gives developers some tools to manage their application such as CDNs, load balancing, easy deployment and testing. However, Paas still requires developers to build and setup the database, the business logic and the front-end client facing view.
¶ 8.2.85. Query
A read request.
¶ 8.2.86. Query optimizer
A process that generates query plans. For each query, the optimizer generates a plan that matches the query to the index that will return results as efficiently as possible. The optimizer reuses the query plan each time the query runs. If a collection changes significantly, the optimizer creates a new query plan.
¶ 8.2.87. RDBMS
Relational Database Management System. A database management system based on the relational model, typically using SQL as the query language.
¶ 8.2.88. Read concern
Specifies a level of isolation for read operations. For example, you can use read concern to only read data that has propagated to a majority of nodes in a replica set.
¶ 8.2.89. RSA keys
Also called public/private keys, keypairs, or some variant, rsa keys are a very powerful way of encrypting and signing messages. With RSA, you have two keys. One is public, which you share with anyone who asks. The other is private (also called secret), and you keep it just to yourself. If someone wants to send you a message only you can read, they sign it with your public key. Math makes it so that no one can decrypt it with anything but your secret key. If you want to write a message and sign that it is authentic, you can encrypt it with your private key. Then, only your public key can decrypt it. Since everyone knows it, they can all verify that you, in fact, did write your message.
¶ 8.2.90. Read lock
A shared lock on a resource such as a collection or database that, while held, allows concurrent readers but no writers.
¶ 8.2.91. Read preference
A setting that determines how clients direct read operations. Read preference affects all replica sets, including shard replica sets.
¶ 8.2.92. Record size
The space allocated for a document including the padding.
¶ 8.2.93. Resource
A database, collection, set of collections, or cluster. A privilege permits actions on a specified resource.
¶ 8.2.94. Role
A set of privileges that permit actions on specified resources. Roles assigned to a user determine the user’s access to resources and operations.
¶ 8.2.95. Rollback
A process that reverts writes operations to ensure the consistency of all replica set members.
¶ 8.2.96. Runtime Error
A runtime error is exactly what it sounds like: an error that occurs while your program is running. It'll often happen when variables aren't initialized properly, or your program hits an unexpected condition. They're typically harder to debug than compilation-time errors like syntax errors, because those can be caught before a program even compiles.
¶ 8.2.97. Server-end
Server-end is an overloaded term. Same to Backend. Refer to the Backend.
¶ 8.2.98. Server-side
Server-side is an overloaded term. Same to Backend. Refer to the Backend.
¶ 8.2.99. Service
A service is an implementation of a interface. Components can offer their creator a set of services, which the creator can either use directly or offer to other components. Services can also be obtained by interface name from a Namespace, which lets the component that created the namespace pick the implementation of the interface. Long-running services are typically obtained through a Namespace, which lets many clients connect to a common implementation.
¶ 8.2.100. Story
A user-facing logical container encapsulating human activity, satisfied by one or more related modules. Stories allow users to organize activities in ways they find natural, without developers having to imagine all those ways ahead of time.
¶ 8.2.101. Story Shell
The system responsible for the visual presentation of a story. Includes the presenter component, plus structure and state information read from each story.
¶ 8.2.102. Server
The process that will take care of pre-rendering the WebApp and serving it to the client. Server can take a few meanings. When you're talking about software, it typically means a long-running program that provides a service, like sending a web page back when one is requested. At the same time, you'll often hear the machines that are used to run such programs referred to as servers as well. These machines are typically configured differently from your average desktop or laptop, usually having no monitor or keyboard (only allowing ssh connections to modify them), and often sporting error-correcting RAM and multi-port network cards.
¶ 8.2.103. SSR
Server Side Rendering, the process of pre-rendering the WebApp server-side, allowing support for people without JS, slow internet and/or devices, and search engines.
¶ 8.2.104. Security
Security is here understood as "end user security", i.e. the various aspects that help keep the tool operating with integrity.
¶ 8.2.105. SSH
SSH stands for 'Secure Shell'. It's a very powerful way to remotely access other machines (also called hosts) from your terminal. the commands follow the format ssh username@host, where 'host' can be a hostname like example.com or an IP address like 127.0.0.1. After running that command, you'll find yourself typically asked for the password for that user on that machine.
¶ 8.2.106. sudo
sudo is like 'Simon Says' for unix (mac and linux) machines. If you want to create a file and need sudo, but want to be able to edit it without sudo later, use chown myuser filename.
¶ 8.2.107. SaaS
Saas, Software as a service. The most famous Saas right now is probably Slack. Slack is a software on the web, and mobile that offers a chat service along with file and chat room management features.
¶ 8.2.108. Syntax
Syntax (roughly) is the grammar of a programming language. If you put things in the wrong order, or mess up their structure, it's usually a syntax error. Forgetting a paretheses is usually one, as would usually be mashing keys and trying to run it as a program. Syntax errors are the easiest type of error to fix.
¶ 8.2.109. Secondary
A replica set member that replicates the contents of the master database. Secondary members may handle read requests, but only the primary members can handle write operations.
¶ 8.2.110. Secondary index
A database index that improves query performance by minimizing the amount of work that the query engine must perform to fulfill a query. See Indexes.
¶ 8.2.111. SQL
Structured Query Language (SQL) is a common special-purpose programming language used for interaction with a relational database, including access control, insertions, updates, queries, and deletions. There are some similar elements in the basic SQL syntax supported by different database vendors, but most implementations have their own dialects, data types, and interpretations of proposed SQL standards. Complex SQL is generally not directly portable between major RDBMS products. SQL is often used as metonym for relational databases.
¶ 8.2.112. SSD
Solid State Disk. A high-performance disk drive that uses solid state electronics for persistence, as opposed to the rotating platters and movable read/write heads used by traditional mechanical hard drives.
¶ 8.2.113. Tag set
A document containing zero or more tags.
¶ 8.2.114. TSV
A text-based data format consisting of tab-separated values. This format is commonly used to exchange data between relational databases, since the format is well-suited to tabular data.
¶ 8.2.115. TTL
Stands for “time to live” and represents an expiration time or period for a given piece of information to remain in a cache or other temporary storage before the system deletes it or ages it out.
¶ 8.2.116. TS
the Timestamp of the operation, the term in which the operation was originally generated on the primary.
¶ 8.2.117. UI
A user interface (UI), is a point of interaction between a computer and humans; it includes any number of modalities of interaction (such as graphics, sound, position, movement, etc.) where data is transferred between the user and the computer system.
¶ 8.2.118. UGC
User generated content is people sharing their ideas to the web for others to see. eg wikis, blogs, podcasting.
¶ 8.2.119. Unique index
An index that enforces uniqueness for a particular field across a single collection. See Unique Indexes.
¶ 8.2.120. Unix epoch
January 1st, 1970 at 00:00:00 UTC. Commonly used in expressing time, where the number of seconds or milliseconds since this point is counted.
¶ 8.2.121. Unordered query plan
A query plan that returns results in an order inconsistent with the sort() order.
¶ 8.2.122. Virtual memory
An application’s working memory, typically residing on both disk and in physical RAM.
¶ 8.2.123. Write lock
An exclusive lock on a resource such as a collection or database. When a process writes to a resource, it takes an exclusive write lock to prevent other processes from writing to or reading from that resource.
¶ 8.2.124. WriteBacks
The process within the sharding system that ensures that writes issued to a shard that is not responsible for the relevant chunk get applied to the proper shard.
¶ 8.2.125. W3C
The World Wide Web Consortium (W3C) sets web standards and provides conventions which developers must adhere to when making programs for the internet.
¶ 8.2.126. Web 1.0
Web 1.0 was one-way traffic. Users could not change webpages.
¶ 8.2.127. Web 2.0
Web 2.0 is a version of the internet that is two-way. It allows anyone with an internet connection to create and share web content. egs are blogs, wikis and more. Started around 2004.
¶ 8.2.128. Web 3.0
Is a version of the internet that is predictive for each user. Previous search items will be used to predict the needs of the user. The internet experience will be tailor-made for each user.
¶ 8.2.129. Webview
webview tags are used to embed ‘guest’ content (such as external web pages) in the app. They are similar to iframes, but differ in that each webview runs in a separate process. It doesn’t have the same permissions as your web page and all interactions between your app and embedded content will be asynchronous. This keeps your app safe from the embedded content.
¶ 8.2.130. YAML
YAML is intended to be an even more human-readable version of JSON. it is a strict superset of JSON, meaning all JSON is valid YAML, but not necessarily the other way around. Instead of explicitly showing parent-child relationships with curly braces, it allows whitespace to be used instead.
小礼物刷一波,打赏作者

Paypal Donate

Venmo Donate

WeChat微信打赏

Alipay支付宝打赏