Design level patterns for highly available Linux applications [closed] - cluster-computing

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
Given toolkits like Linux-HA and cluster layers on top like Corosync; file-system replicators like DRBD and other various bits and pieces there are the components available to developers to build highly available, robust systems.
High-availability architecture-level patterns are often fairly easy to describe, but I'm looking for the level(s) below that.
While each of these toolkit-parts seems to be fairly well documented, and some of them show how to use them in a robust application, they don't show examples of an end-to-end or multi-resource-using application.
So, what are the concrete steps, patterns, recipes, etc. that should be followed in order for developed code to play nice in an environment like this?
What books, web-tutorials, etc., should I point a team to in order to refactor a working single-box custom TCP server (for example) and make it run under cluster control, writing to shared file system space, and working in such a way that when it fails over, it has a chance to recover and keep working.

Related

What does a cloud application look like? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
There are many applications that are called Cloud applications. As an example, those companies who deliver a web-based application for lots of customers (e.g. Salesforce) over the web call their application a Cloud App. On the other hand, many people know Cloud-based Apps as the ones built on top of Hadoop or similar technologies that could scale-up to many computing resources.
Now the Q is, is there an exact definition of a Cloud App? Is there any good resources on Cloud Apps? There is a nice link here, but it is a little bit old.
As far as I can tell, there's no clear definition.
The loosest is simply any application that does most of the work on a server, not on the local client's device.
The strictest definition I've heard is an application that runs almost entirely on a cluster of virtualized servers that are provided as a service, not hosted on-site. And the client device does almost nothing; probably just a simple web browser with minimal scripting.
Any definition in between could make sense in context.
I wouldn't get too caught-up by it. "Cloud" is mostly just a marketing buzz-word with no serious technical definition.

How do you prevent access to the 'calculator' interface on a particular OS [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 7 years ago.
Improve this question
How do you prevent access to the 'calculator' interface on a particular OS (say Windows). We would want to avoid usage of calculators while taking an online quiz at the site. Is this even possible?
If you're talking about through a purely web interface, then no. In order to do this, you would have to be able to monitor running processes, which is something a web app can't do. It would be too big a security risk.
If you control the machines (they're on your network, in a classroom where you can load and restrict the software, etc), you could write a program to monitor and shut down the processes. For example, a .NET application could use the System.Diagnostocs.Process object to monitor for instances of calc.exe.
A standard executable could do it, but not a web app.
Edit Added
There may be other alternatives if you control the PCs in question. Most corporate IT shops use some sort of monitoring software that will detect the use of "Unauthorized" programs. (I got busted for launching Solitaire once.) That would be more of a question for ServerFault.com, however.
Do you think it would be a good idea if websites were able to stop executable running on remote computers? Think about this seriously for a second, the security/privacy implications this would have.

Pitfalls to avoid when writing project specs [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 years ago.
Improve this question
I'm currently trying to write up some software specs for a large-ish project that I'd like to bid out on oDesk (maybe 3k-6k). I have a classical education in computer science, but minimal work experience and I've never worked in a corporate environment.
I've written up 15 pages of project specs for an API that I want to run on Google App Engine. I'm finding the subtleties difficult with issues such as: where to draw the line on what to specify and what not to; how to break the project up into pieces so that if one part goes wrong, other parts can still be used; where and how to set milestones; and how to screen for a candidate who has the skills to properly implement the specs.
I asked a friend what issues I should watch out for and he said:
Make sure specs do not have contradictory information
Make sure specs are not unnecessarily specific because this will turn off more skilled developers
What other pitfalls and common mistakes should I look out for while drawing up project specs?
While it is important to focus on the functionality of what you want to achieve, also keep in mind the non-functional requirements as well. Think about how you want it to perform, security considerations, etc.
One to add to the list
Make sure the specs are unambiguous. (Can only be interpreted one way...Hopefully)
I think these two links will help:
On Reqs And Specs: http://www.pragmaticmarketing.com/publications/topics/02/0204sj
Painless Functional Specifications - Part 2: What's a Spec?: http://www.joelonsoftware.com/articles/fog0000000035.html

Buy or build tool for Data Reporting? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
We have been asked to provide a data reporting solution. The followng are the requirements:
i. The client has a lot of data which is generated everyday as an outcome of the tests they run. These tests are run at several sites and they get automatically backed up into a central server.
ii. They already have perl scripts which post process them and generates excel based reports.
iii. They need a web based interface for comparing those reports and they need to mark and track issues which might be present in those data.
I am confused if we should build our own tool for this or we should go for already exiting tool(any suggestions?). Can you please provide supportive arguments for the decision that you would suggest?
You need to narrow down your requirements (what kind of data needs to be compared, and in which format?). Then check if there is already a software available (commercial or free) that fulfills your needs. Based on that, decide if its better (i.e. cheaper) to implement the functionality yourself, or use the other software.
Don't reinvent the wheel.
There are quite a few tools out there that specialise in this sort of thing, my gut feeling is that you can find something ready made that does what you need.
As a side note, that tool may also be a better solution for creating those excel reports than the perl scripts.

What is the best way to store a knowledge base of business rules for helpdesk? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
Does anyone know of any software or a good way for developers to build up a knowledge base of business rules that are built in to the software for help desk to use?
We already have a helpdesk software but we are not looking to replace this.
A wiki is definitely the way to go. Processes change, sometimes frequently, and in a fast-paced environment like a help desk a tool that allows quick, easy access and management of that type of content is extremely important to allow people to do their jobs effectively.
One of the greatest benefits I've found is the heiarchical sturcture of many wikis, allowing employees to find the correct content from a number of different customer angles.
Can you be more specific?
This may fall under "policies and procedures" management software. Here are some:
http://www.softscout.com/software/Human-Resources/Policy-and-Procedures.html
I'd like to find one that's more wiki-like or easier to integrate into a a website serving as a more general company knowlege base.
I would recommend a wiki wiht a "Wiki Gardener" role- someone who cleans up the duplicate entries and sorts.
Wiki technology with a Rich Text Editor option would useful if your Support Desk are not totally technical.
Having some structure is imperative, developing something in any Wiki that makes sense to the general editing populace, and has a low threshold to get from reading to editing. You will also possibly need a migration strategy for taking hundereds of little notes into something more readable and searchable.

Resources