Hot answers tagged

115

The distinguishing feature of "cloud computing" is indeed the way that it is marketed, in particular, the way that it is priced. Another synonym for "cloud computing" that I personally prefer is "utility computing", and that term describes best what it is all about: it is priced and used like any other utility, water, gas, ...


104

Which is best practice? to manually deploy one project artifact each deployment or keep doing the file by file deployment? Neither. Best Practice is to automate your deployment, completely and exclusively. That means nobody gets to put anything onto a server manually. "To summarize the summary of the summary: People are a Problem." (Douglas Adams) ...


86

If you don't know whether you need server-side code, you probably don’t* *Caveat: Server-side code is essential for security, when you want to internally control access to content, data, or functionality. (It does not necessarily need to be your server, see last paragraph.) Ask yourself what problem using server-side technologies would solve. If you can’t ...


67

Internal networks often use 1 Gbps connections, or faster. Optical fiber connections or bonding allow much higher bandwidths between the servers. Now imagine the average size of a JSON response from an API. How much of such responses can be transmitted over a 1 Gbps connection in one second? Let's actually do the math. 1 Gbps is 131 072 KB ...


56

Read about static site generators. These allow you to create a site in a programmatic manner (using templates, data, etc), and not by hand-crafting HTML. The result is a set of static HTML and CSS that does not require any backend. https://www.staticgen.com/ lists and ranks a number of such open-source generators; closed-source offerings likely exist, too.


41

Interesting question. Basically, we can reduce this down to the right way to classify things in terms analogous to OSI layers. HTTP is commonly defined as an Application Level protocol, and HTTP is indeed a generic Client/Server protocol. However, in practice, the server is almost always a relaying device, and the client is a web browser, responsible for ...


38

You have confused the terms "front-end" and "back-end" with "server-side" and "client-side". "Back-end" usually refers to systems which are not directly exposed to the user (database servers, middleware and so on), while "front-end" usually refers to the application (in the case of the Web, this normally means static and dynamic web pages) directly accessed ...


32

One thing to keep in mind is the expected network latency (i.e. ping time) between your clients and your server. In a high-latency situation with otherwise good bandwidth, many small requests will perform significantly worse than one large one. I've recently been collaborating on a multi-team database-backed web application project in which one of the ...


25

This question is a bit opinion based, but either way. The way i see it, 200 can serve "soft errors". When it comes to building API's i try to distinguish between these and "hard errors". "Soft errors" will be served with a status code of 200, but will contain an error description and a success status of false. "Soft errors" will only occur when the result ...


21

Use the RFC2616, Luke! You read the RFC 2616 on HTTP/1.1, and you go for it. That was actually a project in my 3rd year in engineering school, and that's pretty much the project description. Tools Your tools are: basic networking stuff (socket management, binding, understand addresses), good understanding of I/O streams, a lot patience to get some shady ...


16

There are two aspects of an API: The effort to implement the API, and the effort of all the clients to use the API correctly. As the author of the client, I know that when I send a request to a web server, I may either get an error (never talked properly to the server), or a reply with a status code. I have to handle the errors. I have to handle a good ...


15

A mainframe is designed for processing large amounts of information by the use of batch transaction processing. It particularly works well at running scalable software and dealing with massively parallel operations. Everything about mainframes is screamingly fast. Mainframes are typically built by IBM and usually run z/OS. A server (when referred to in the ...


15

This is a fairly common problem with asynchronous transactions, and falls into several parts. How do both sides know that the transaction request has been successfully received? How do you resend a transaction request that the client believes has not been received properly? How does the server detect repeat requests from the client when the server ...


14

Manual steps take a lot of effort and are risky: you might forget a necessary file. Maybe not everyone in your team knows which files need to be copied. All of these issues make deployments big, daunting, and rare – completely unnecessarily. Automation addresses these. Even the simplest automation step can have big benefits, because deployments become ...


13

Web Server Definition A web server is a service that handles specifically requests in the HTTP protocol format. The server responses to requests made using the HTTP format, and in turn responds using a valid HTTP response. All responses from a web server follow the W3 standards for HTTP protocols. Including, and not limited to, server 500 errors, redirects ...


12

I would suggest using using(MySqlConnection conn = new MySqlConnetion(cs) { conn.open(); //setup and execute query } //conn gets closed here Here, once you exit the using block, the connection is closed.


10

This is a big set of questions, but I suspect one that a lot of folks need to address, particularly as they start to advance in a career that started with a heavy front-end focus. You mention that you are going for a role that includes PHP and MySQL development. These are things that need to execute on the server. Being able to make good technical ...


9

I think your question may be quite specific to PHP really, as I can't see any of the other back-end technologies you mention being used like this. PHP is a funny example as it can be (in a rather ugly manner I may add) viewed as a all-in-one language with regards to a lot of web projects. You can do your traditional "back-end" tasks - such as file and ...


9

You can't decrease the request count. Not really. HTTP is one response per request (and this is one of the reasons for HTTP/2). What you CAN do is decrease the number of requests that hit a given server. I'd first solve this using a CDN for your images. This will make them the CDN's problem, one they're prepared to handle by distributing the images over ...


9

Your question seems to assume that all of these resources are coming from the same source. But that's not how the World Wide Web works. The browser's prevailing (and correct) assumption is that resources can come from anywhere, and in fact they often do. This is why we can stitch together web pages from many different resources, and have them appear as ...


9

My question is if the CPU hits 100% usage, are the 10 instances still being parallel processed? Yes. Or Does the CPU start sequencing them instead of parallel processing them? Your processor probably doesn't have 10 CPU cores, so yes, it is doing swapping of them in some sequence, too. But it does not suddenly run one thread to completion when it gets ...


9

Since a serverless app keeps no state between runs, it can't maintain a database connection pool. Serverless apps really face the same constraints as 90's CGI scripts. In general, a permanent server process will be able to outperform a process-per-request or container-per-request architecture because the server does initialization once, not once per request. ...


9

The server exposes the API and the client makes use of it. For example, Twitter has data it wants to share (Tweets among other things), so it exposes an API which is served by a REST server (several, in all likelihood). You want to write a mobile app that uses that API to fetch and expose tweets to a user, your mobile app would be the REST client.


9

Best practice would be to implement an automated process of some sort. Be careful to check that there isn't a special reason for the 'file by file' approach which you would have to take into account.


9

Basic Drawbacks Excess complexity, redundancy. More potential for bugs (more paths through more code), more time to develop, test, and more cost to maintain, forever. Stale Data The moment the data in the database changes from some other source than this service, the server starts returning incorrect (or at least stale) data. You get to experience cache ...


9

The term “cloud” is indeed very broad and used to represent different realities: IaaS is “Infrastructure as a service”. This seems to be your current way to see the cloud: its about computing capacity and servers. PaaS” which is “platform as a service” SaaS is “Software as a service” which gives you access to a software without any care about the servers or ...


8

Why Rewrite What you can Get Off the Shelf? Why not use RedDwarf Server (formerly Project DarkStar)? RedDwarf Server is an open source middleware solution for developing the server-side of massively multiplayer online games. It is the official community fork of Project Darkstar, an open source project supported and managed by Sun Microsystems. - from ...


7

Need to save some state Put it in the database Retrieve on next login Actually, when the user logs in again, what you'll need to do is figure out how many pieces of iron ore should have been mined while the user was gone, and update the database with that knowledge the next time the user logs in. If other users interact with the "pieces of ore" ...


Only top voted, non community-wiki answers of a minimum length are eligible