eisenmp multiprocess(or) example collection for server and mobiles
Project description
eisenmp_examples
Python 3.7 Multiprocess Framework for Server and Mobiles
Examples:
- simple style prime number calculation to see the basic use
- simple http server on one cpu gets content via queue
- one flask orm server on each cpu - share a user db
- multiple flask orm server on each cpu, port groups - share a user db
- web download csv large list, calculate average over a column
- brute_force_attack with itertools generator and dictionary
- example with two, double fed queues
- All scenarios follow the Template style and have descriptions
How to run the examples?
- Clone the repo and
run an eisenmp_exa_...or - Install PyPi package
- in terminal run:
eisenmp_urland open the local Python SimpleHTTP URL - in terminal run:
eisenmp_menuand choose from Menu
Brute force cracks strings of an online-game alphabet salad quest.
.. read wordlist .\lang_dictionaries\ger\german.dic
.. read wordlist .\lang_dictionaries\eng\words.txt
[BRUTE_FORCE] cfhhilorrs
Create processes. Default: proc/CPU core
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
... proc Process-7 ... rohrschilf
... proc Process-14 ... rohrschilf
... proc Process-16 ... rohrschilf
... proc Process-7 ... rohrschilf
... proc Process-13 ... schilfrohr
... proc Process-13 ... schilfrohr
... proc Process-11 ... schilfrohr
... proc Process-11 ... schilfrohr
generator empty, run time iterator 5 seconds
exit WORKER 15
exit WORKER 16
exit WORKER 2
exit WORKER 10
exit WORKER 11
exit WORKER 12
exit WORKER 8
exit WORKER 3
exit WORKER 4
exit WORKER 6
exit WORKER 14
exit WORKER 5
exit WORKER 7
exit WORKER 13
exit WORKER 1
exit WORKER 9
--- Result for [CFHHILORRS]---
rohrschilf
schilfrohr
--- END ---
Processes are down.
BF Time in sec: 12
Process finished with exit code 0
Inbuild example, assert a scrambled string. Use brute force or condensing.
We use an english (.6M) plus a german (2M) wordlist and make a dictionary of it. To gain more read speed.
(A) len(str) <= 11, combined brute force dictionary attack with a permutation generator. itertool prod. duplicates
Permutation lists grow very fast, reaching Terabyte size.
(B) len(str) >= 12, pre reduce a len(str) list. Kick out words which are not matching char type and count.
eisenmp uses Pythons permutation generator
itertools
for the brute force attack example.
Another example downloads a large list and calculates average for one column.
Python CSV extracts the column and we calculate the average with the assigned number
of Porcesses/CPU cores. It can be more processes than CPU cores, if it makes sense.
- large lists https://www.stats.govt.nz/large-datasets/csv-files-for-download/ Crown copyright ©. All material Stats NZ produces is protected by Crown copyright. Creative Commons Attribution 4.0 International licence.
- German dict https://sourceforge.net/projects/germandict/. License Public Domain
- English dict Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved.
- ORM Flask-SQLAlchemy https://pypi.org/project/Flask-SQLAlchemy-Project-Template/ License MIT 44xtc44
Cheers
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
eisenmp_examples-0.3.1.tar.gz
(30.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eisenmp_examples-0.3.1.tar.gz.
File metadata
- Download URL: eisenmp_examples-0.3.1.tar.gz
- Upload date:
- Size: 30.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1eb5751a90c229d7f63eb360b0cf199e152c48976f934f93c8c4305bb16bd52d
|
|
| MD5 |
b39d1801f30bf5bd0bdae1bb9fc853da
|
|
| BLAKE2b-256 |
45ad286b4728409ba474b8ccbf45de0f960fc7595ab8d0879760a6bc1e212d52
|
File details
Details for the file eisenmp_examples-0.3.1-py3-none-any.whl.
File metadata
- Download URL: eisenmp_examples-0.3.1-py3-none-any.whl
- Upload date:
- Size: 44.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94a6a59e963267ae60bd0f6402cae1d4fb19c5ff5cc12a0e45e4c236feca83b1
|
|
| MD5 |
c89fc21dbbad35afdf4bbd0a13913c0e
|
|
| BLAKE2b-256 |
6b6380746aa2ec532b094cd4f16612be60aaa3170d050d794bb1a38ff37c9b02
|